Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hadenlabs/terraform-github-repository
github repository for terraform
https://github.com/hadenlabs/terraform-github-repository
github hadenlabs peru repository terraform terraform-modules
Last synced: 28 days ago
JSON representation
github repository for terraform
- Host: GitHub
- URL: https://github.com/hadenlabs/terraform-github-repository
- Owner: hadenlabs
- License: lgpl-3.0
- Created: 2021-02-16T13:33:55.000Z (over 3 years ago)
- Default Branch: develop
- Last Pushed: 2022-02-28T03:43:15.000Z (over 2 years ago)
- Last Synced: 2024-09-27T19:21:44.347Z (about 1 month ago)
- Topics: github, hadenlabs, peru, repository, terraform, terraform-modules
- Language: HCL
- Homepage:
- Size: 708 KB
- Stars: 4
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: docs/contributing.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: docs/code_of_conduct.md
- Security: SECURITY.md
Awesome Lists containing this project
README
[![Latest Release](https://img.shields.io/github/release/hadenlabs/terraform-github-repository)](https://github.com/hadenlabs/terraform-github-repository/releases) [![Lint](https://img.shields.io/github/workflow/status/hadenlabs/terraform-github-repository/lint-code)](https://github.com/hadenlabs/terraform-github-repository/actions?workflow=lint-code) [![CI](https://img.shields.io/github/workflow/status/hadenlabs/terraform-github-repository/ci)](https://github.com/hadenlabs/terraform-github-repository/actions?workflow=ci) [![Test](https://img.shields.io/github/workflow/status/hadenlabs/terraform-github-repository/test)](https://github.com/hadenlabs/terraform-github-repository/actions?workflow=test) [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit) [![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow)](https://conventionalcommits.org) [![KeepAChangelog](https://img.shields.io/badge/changelog-Keep%20a%20Changelog%20v1.0.0-orange)](https://keepachangelog.com) [![Terraform Version](https://img.shields.io/badge/terraform-1.x%20|%200.15%20|%200.14%20|%200.13%20|%200.12.20+-623CE4.svg?logo=terraform)](https://github.com/hashicorp/terraform/releases)
# terraform-github-repository
Terraform module to provision an github repository.
## Requirements
This is a list of plugins that need to be installed previously to enjoy all the goodies of this configuration:
- [gomplate](https://github.com/hairyhenderson/gomplate)
- [terraform](https://github.com/hashicorp/terraform)
- [taskfile](https://github.com/go-task/task)
## Requirements
| Name | Version |
| ------------------------------------------------------------------------ | ----------------- |
| [terraform](#requirement_terraform) | >= 0.12.20, < 2.0 |
| [github](#requirement_github) | >=4.5.0 |
| [local](#requirement_local) | >=1.3.0 |## Providers
| Name | Version |
| --------------------------------------------------------- | ------- |
| [github](#provider_github) | >=4.5.0 |## Modules
No modules.
## Resources
| Name | Type |
| --- | --- |
| [github_actions_secret.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/actions_secret) | resource |
| [github_branch.develop](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/branch) | resource |
| [github_branch.gh_pages](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/branch) | resource |
| [github_branch_default.develop_default](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/branch_default) | resource |
| [github_branch_protection.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/branch_protection) | resource |
| [github_issue_label.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/issue_label) | resource |
| [github_repository.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository) | resource |
| [github_repository_collaborator.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository_collaborator) | resource |
| [github_repository_deploy_key.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository_deploy_key) | resource |
| [github_repository_file.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository_file) | resource |
| [github_repository_project.this](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository_project) | resource |## Inputs
| Name | Description | Type | Default | Required |
| --- | --- | --- | --- | :-: |
| [add_labels_default](#input_add_labels_default) | add labels default | `bool` | `true` | no |
| [branch_protection](#input_branch_protection) | branch protections | `map(any)` | `{}` | no |
| [collaborators](#input_collaborators) | List of Collaborator Objects |list(object({| `[]` | no |
username = string
permission = string
}))
| [default_branch](#input_default_branch) | Name of the Default Branch of the Repository | `string` | `"develop"` | no |
| [deploy_keys](#input_deploy_keys) | The name of repositories. |list(object({| `[]` | no |
title = string
key = string
read_only = bool
}))
| [description](#input_description) | The description of the repository. | `string` | n/a | yes |
| [files](#input_files) | list files for repository |list(object({| `[]` | no |
branch = string
file = string
content = string
commit_message = string
commit_author = string
commit_email = string
overwrite_on_create = bool
}))
| [is_git_flow](#input_is_git_flow) | Git Flow - Github Flow | `bool` | `false` | no |
| [name](#input_name) | The name of the repository. | `string` | n/a | yes |
| [pages](#input_pages) | Configuration block for GitHub Pages | `map(any)` | `{}` | no |
| [secrets](#input_secrets) | secrets for repository | `map(any)` | `{}` | no |
| [settings](#input_settings) | Create and manage settings. | `any` | `{}` | no |
| [topics](#input_topics) | topics of project. | `list(string)` | `[]` | no |
| [types](#input_types) | types of project. | `list(string)` | `[]` | no |
| [visibility](#input_visibility) | The visibility of the repository private or public. | `string` | `"private"` | no |## Outputs
| Name | Description |
| ----------------------------------------------------------------- | -------------------------------------- |
| [deploy_key](#output_deploy_key) | output instance deploy_key |
| [files](#output_files) | output instance github files |
| [instance](#output_instance) | output instance repository |
| [labels](#output_labels) | output topics github repository |
| [name](#output_name) | output name repository |
| [secrets](#output_secrets) | output instance github actions secrets |
| [topics](#output_topics) | output topics github repository |## Help
**Got a question?**
File a GitHub [issue](https://github.com/hadenlabs/terraform-github-repository/issues).
## Contributing
See [Contributing](./docs/contributing.md).
## Module Versioning
This Module follows the principles of [Semantic Versioning (SemVer)](https://semver.org/).
Using the given version number of `MAJOR.MINOR.PATCH`, we apply the following constructs:
1. Use the `MAJOR` version for incompatible changes.
1. Use the `MINOR` version when adding functionality in a backwards compatible manner.
1. Use the `PATCH` version when introducing backwards compatible bug fixes.### Backwards compatibility in `0.0.z` and `0.y.z` version
- In the context of initial development, backwards compatibility in versions `0.0.z` is **not guaranteed** when `z` is increased. (Initial development)
- In the context of pre-release, backwards compatibility in versions `0.y.z` is **not guaranteed** when `y` is increased. (Pre-release)## Copyright
Copyright © 2018-2022 [Hadenlabs](https://hadenlabs.com)
## Trademarks
All other trademarks referenced herein are the property of their respective owners.
## License
The code and styles are licensed under the LGPL-3.0 license [See project license.](LICENSE).
## Don't forget to 🌟 Star 🌟 the repo if you like terraform-github-repository
[Your feedback is appreciated](https://github.com/hadenlabs/terraform-github-repository/issues)