All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add support for v4 branch protections.
- BREAKING CHANGE: Remove deprectated variable
branch_protections
please usebranch_protections_v3
instead.
- Mark
var.defaults
as deprecated. This variable was introduced and used before Terraform Modulefor_each
was available.
- BREAKING: update to provider
>= 4.31
for supporting default squash and merge commit titles and messages
- Add support for
squash_merge_commit_title
- Add support for
squash_merge_commit_message
- Add support for
merge_commit_title
- Add support for
merge_commit_message
- Add support for
ignore_vulnerability_alerts_during_read
- Add support for Terraform GitHub Provider version
5.x
var.app_installations
should be a of typeset(string)
instead ofset(number)
- Add support for
github_app_installation_repository
- Set correct default value for
delete_branch_on_merge
in docs - BREAKING CHANGE: Remove support for multi-type variable
branches
(removedlist(string)
support)
- Set correct alternative type for
deploy_keys
in README
- Add support for
github_branches
- Add support for
require_conversation_resolution
for Branch Protection (thanks to @0x46616c6b) - Add support for
encrypted_secrets
- BREAKING: update to provider
~> 4.20
fixing an issue that was just supportingv4.19.x
- Add GitHub Autolink References configuration block (thanks to @0x46616c6b)
Bumped the minimum supported version of the GitHub Terraform Provider to v4.19.2
since it contains a critical bugfix to support required_approving_review_count = 0
on branch protection rules. Also, allow_auto_merge
has been added in v4.17.0
.
- Add support for
allow_auto_merge
We dropped support for Terraform pre 1.0 and GitHub Terraform Provider pre 4.0.
In addition we changed to the integrations/github
official GitHub Terraform Provider.
This needs migration actions if you already used this module with the hashicorp/github
provider and want to upgrade.
To migrate from a previous version, please ensure that you are using the
integrations/github
official GitHub Terraform Provider.
terraform {
required_version = "~> 1.0"
required_providers {
github = {
source = "integrations/github"
version = "~> 4.0"
}
}
}
Once you've updated the provider, a manual state migration is required to migrate existing resources to the new provider. The following command will replace the provider in the state.
terraform state replace-provider registry.terraform.io/hashicorp/github registry.terraform.io/integrations/github
After you've migrated the state, please run
terraform init
to apply the changes to the resources.
- Add support for Official GitHub Terraform Provider
integrations/github
- Removed support for Terraform < 1.0
- Removed support for GitHub Provider < 4.0
- Removed compatibility to Hashicorp GitHub Terraform Provider
hashicorp/github
- Set
webhooks
output as sensitive. - Add underscores in team names (special thanks to @marc-sensenich)
- Fix
dismiss_stale_reviews
in README to a default value oftrue
- Set
vulnerability_alerts
per default totrue
for public repositories and tofalse
for private repositories if not explicitly set to avoid drifts when runningterraform plan
.
- Add support for Terraform
v1.0
- Fix terraform typing issue when defining branch protections for multiple branches
- Add support for GitHub Pages configuration in repositories
- Add support for Terraform
v0.15
This is a BREAKING RELEASE.
Branch protection resourcess will be recreated and new fetures are added enforcing security by default.
Please review plans and report regressions and issues asap so we can improve documentation for upgrading.
- Branch protections will be recreated in a compatible way. Alternatively, all branch protections could be manually updated using
terraform state mv
but this is not recommended as it is a manual process that can suffer from human prone errors. - If you do not want to archive repositories on deletion set
archive_on_destroy
to false in repository configurations.
- Addition to
module.<NAME>.github_repository.repository
:- Addition or changed default of argument
archive_on_destroy = true
- Addition or changed default of argument
- Destruction of
module.<NAME>.github_branch_protection.branch_protection[*]
- Creation of
module.<NAME>.github_branch_protection_v3.branch_protection[*]
- Replacement of
module.<NAME>.github_team_repository.team_repository_by_slug[<SLUG>]
- Triggered by change in
team_id = "<NUMBER>" -> "<SLUG>"
- Triggered by change in
- Add support for Github Provider v4 (Minimal compatible version is v4.5).
- Add support for
archive_on_destroy
repository flag defaulting totrue
. - Add support for
vulnerability_alerts
repository flag. - Add security deny list for v4.7.0, v4.8.0, v4.9.0 and v4.9.1 due to a bug setting visibility to public for templated repository creation.
- Use
github_branch_protection_v3
instead ofgithub_branch_protection
for performance and compatibility reasons. ATTENTION: This Change will trigger recreation of all branch protections when upgrading to v0.8.0. - Use
github_branch_default
to set default branch of repositories. ATTENTION: This Change will trigger creation of new resource whendefault_branch
argument is set.
- BREAKING CHANGE: Removed support for Github Provider before v4.3
- Add support for
visibility
parameter. Defaults toprivate
and respects desired state as defined in deprecatedprivate
parameter.
- Add deprecation of
private
parameter. - BREAKING CHANGE: Minimum Github Terraform Provider version increased to
2.9.0
.
- Add support for managing github secrets via
plaintext_secrets
argument (#58/#59 kudos to @mrodm)
- Add support for Terraform v0.14.x
- Remove support for Terraform Github Provider v3.1.0 as this version introduced undocumented breaking changes. See integrations/terraform-provider-github#566 for details.
- Adjust default branch in code to github new default branch naming
- Add support for Terraform v0.13.x
- Add support for Terraform Github Provider v3.x
- Prepare support for Terraform v0.14.x (needs terraform v0.12.20 or above)
0.4.2 - 2020-06-23
- Add
CHANGELOG.md
.
- Switch CI from SemaphoreCI to GitHub Actions.
0.4.1 - 2020-06-04
- Add CONTRIBUTING.md.
- Add
phony-targets
andmarkdown-link-check
hooks.
- Update logo and badges in README.md.
0.4.0 - 2020-05-28
- Fix a bug that was introduced during the last release which forced the re-creation of teams on every run.
0.3.1 - 2020-05-24
- Fix dependency issue when assigning teams by name.
0.3.0 - 2020-05-14
- Add
issue_labels_create
to specify whether you want to force or suppress the creation of issues labels. Default istrue
ifhas_issues
istrue
orissue_labels
is non-empty, otherwise default isfalse
.
0.2.1 - 2020-05-09
- Introduced support for the
github_repository_webhook
resource. You can now add webhooks to your repositories through the newly
introduced variable
webhooks
. For further information please read the documentation.
0.2.0 - 2020-04-16
- Use slugs for team ids.
- Set
delete_branch_on_merge
default value totrue
. - Upgrade terraform-github-provider to
~> 2.6
.
- Fix module dependency by introducing
modules_depends_on
.
0.1.0 - 2020-02-27
- Update README.md and add more examples and related tests.
0.0.7 - 2020-01-14
- Breaking Changes for
branch_protection_rules
. Properties are now configured as a nested object instead of lists.
0.0.6 - 2020-01-12
- Ignore changes in
auto_init
. - Ignore changes in
gitignore_template
. - Ignore changes in
license_template
.
0.0.5 - 2020-01-12
- Add
defaults
. - Add
extra_topics
for adding additional topics when defaults.topics should not be overwritten but merged. - Add
admin_collaborators
as a list of github usernames to add as collaborators with admin permission. - Add
push_collaborators
as a list of github usernames to add as collaborators with push permission. - Add
pull_collaborators
as a list of github usernames to add as collaborators with pull permission. - Add
admin_team_ids
as a list of team IDs to add as admin teams. - Add
push_team_ids
as a list of team IDs to add as push teams. - Add
pull_team_ids
as a list of team IDs to add as pull teams.
- Use
for_each
instead ofcount
to not recreate most resources when order in module parameter changes. - Add automated unit tests.
- Fix race condition in
branch_protection
configuration.
- Remove
teams
. - Remove
collaborators
.
0.0.4 - 2020-01-06
- Set
auto_init
default value totrue
.
0.0.3 - 2020-01-06
- Set
has_issues
default value tofalse
.
0.0.2 - 2020-01-06
- Remove unnecessary
Vars
declaration from test.
- Set
has_feature
toggles default values tofalse
. - Set example variables default value to null.
0.0.1 - 2020-01-05
- This is the initial release of our GitHub Repository module with support for creating and managing GitHub Repositories for Organizations.