Coder Social home page Coder Social logo

sanderma / terraform-github-mcaf-repository Goto Github PK

View Code? Open in Web Editor NEW

This project forked from schubergphilis/terraform-github-mcaf-repository

0.0 0.0 0.0 89 KB

Terraform module to create and manage a GitHub repository.

License: Apache License 2.0

HCL 100.00%

terraform-github-mcaf-repository's Introduction

terraform-github-mcaf-repository

MCAF Terraform module to create and manage a GitHub repository.

Requirements

Name Version
terraform >= 0.13
github >= 5.14.0

Providers

Name Version
github >= 5.14.0

Modules

No modules.

Resources

Name Type
github_actions_environment_secret.secrets resource
github_actions_repository_access_level.actions_access_level resource
github_actions_secret.secrets resource
github_actions_variable.action_variables resource
github_branch.default resource
github_branch_default.default resource
github_branch_protection.default resource
github_repository.default resource
github_repository_environment.default resource
github_repository_file.default resource
github_team_repository.admins resource
github_team_repository.readers resource
github_team_repository.writers resource
github_team.default data source
github_user.default data source

Inputs

Name Description Type Default Required
name The name of the repository string n/a yes
actions_access_level Control how this repository is used by GitHub Actions workflows in other repositories string null no
actions_secrets An optional map with GitHub action secrets map(string) {} no
actions_variables An optional map with GitHub action secrets map(string) {} no
admins A list of GitHub teams that should have admins access list(string) [] no
allow_rebase_merge To enable rebase merges on the repository bool false no
allow_squash_merge To enable squash merges on the repository bool false no
archived Specifies if the repository should be archived bool false no
auto_init Disable to not produce an initial commit in the repository bool true no
branch_protection The GitHub branches to protect from forced pushes and deletion
list(object({
branches = list(string)
enforce_admins = bool
push_restrictions = list(string)
require_signed_commits = bool

required_checks = object({
strict = bool
contexts = list(string)
})

required_reviews = object({
dismiss_stale_reviews = bool
dismissal_restrictions = list(string)
required_approving_review_count = number
require_code_owner_reviews = bool
})
}))
[] no
default_branch Name of the default branch for the GitHub repository string "main" no
delete_branch_on_merge Automatically delete head branch after a pull request is merged bool true no
description A description for the GitHub repository string null no
environments An optional map with GitHub environments to configure
map(object({
secrets = map(string)
wait_timer = number

deployment_branch_policy = object({
custom_branch_policies = bool
protected_branches = bool
})

reviewers = object({
teams = list(string)
users = list(string)
})
}))
{} no
gitignore_template The name of the template without the extension string null no
has_downloads To enable downloads features on the repository bool false no
has_issues To enable GitHub Issues features on the repository bool false no
has_projects To enable GitHub Projects features on the repository bool false no
has_wiki To enable GitHub Wiki features on the repository bool false no
is_template To mark this repository as a template repository bool false no
readers A list of GitHub teams that should have read access list(string) [] no
repository_files A list of GitHub repository files that should be created
map(object({
path = string
content = string
}))
{} no
template_repository The settings of the template repostitory to use on creation
object({
owner = string
repository = string
})
null no
visibility Set the GitHub repository as public, private or internal string "private" no
vulnerability_alerts To enable security alerts for vulnerable dependencies bool false no
writers A list of GitHub teams that should have write access list(string) [] no

Outputs

Name Description
full_name The full 'organization/repository' name of the repository
name The name of the repository
repo_id The id of the repository

License

Copyright: Schuberg Philis

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

terraform-github-mcaf-repository's People

Contributors

svanharmelen avatar stefanwb avatar fatbasstard avatar shoekstra avatar marwinbaumannsbp avatar dennisbrouwer91 avatar stromp avatar dbrouwer-sbp avatar thulasirajkomminar avatar sbkg0002 avatar braindrain avatar fernandogoncalves-me avatar wvanheerde avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.