MCAF Terraform module to create and manage a GitHub repository.
Name | Version |
---|---|
terraform | >= 0.13 |
github | >= 5.14.0 |
Name | Version |
---|---|
github | >= 5.14.0 |
No modules.
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 |
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({ |
[] |
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({ |
{} |
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({ |
{} |
no |
template_repository | The settings of the template repostitory to use on creation | object({ |
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 |
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 |
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.