Skip to content

Commit

Permalink
Merge pull request #28 from mineiros-io/mariux/gh4
Browse files Browse the repository at this point in the history
feat: Add support for github provider 4.x
  • Loading branch information
mariux authored Apr 28, 2021
2 parents 4f280b3 + 3e48610 commit 612b28e
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 29 deletions.
39 changes: 37 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,68 +1,103 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.4.0]

### Added

- Add support for Github Provider v4.x

## [0.3.0]

### Added

- Add support for Terraform v0.14.x

## [0.2.0]

### Added

- 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.1.4] - 2020-06-23

### Added

- Add `CHANGELOG.md`.

### Changed

- Switch CI from SemaphoreCI to GitHub Actions.

## [0.1.3] - 2020-05-13

### Added

- Work around a terraform issue in `module_depends_on` argument.

## [0.1.2] - 2020-05-05

### Change

- New format for README.md and LICENSE.
- Bump pre-commit hooks to v 0.1.4 and add new hooks.
- Bump build-tools to v0.5.3.

## [0.1.1] - 2020-04-18

### Added

- Introduce new variables `all_members_team_name` and `all_members_team_visibility`
for adding the possibility to create a team which contains all members of your organization.

## [0.1.0] - 2020-03-03

### Added

- Added some more documentation.
- Pre-commit hooks upgrade.

### Changed

- Add variables and outputs to the existing example.

## [0.0.2] - 2020-01-12

### Added

- Added pre-commit hooks.
- Added automated unit tests.
- Added CI configuration.
- Added admins for adding members with admins/owner role.
- Added projects to outputs.

### Changed

- Changed members from complex object to list of usernames for adding normal members.

## [0.0.1] - 2020-01-06

### Added

- This is the initial release of our GitHub Organization module with support
for managing GitHub Organizations, Members and Blocked Users.

<!-- markdown-link-check-disable -->
[Unreleased]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.3.0...HEAD
[0.3.0]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.2.0...v0.3.0

[unreleased]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.4.0...HEAD
[0.4.0]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.3.0...v0.4.0

<!-- markdown-link-check-enable -->

[0.3.0]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.2.0...v0.3.0
[0.2.0]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.1.4...v0.2.0
[0.1.4]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.1.3...v0.1.4
[0.1.3]: https://github.com/mineiros-io/terraform-github-organization/compare/v0.1.2...v0.1.3
Expand Down
44 changes: 19 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ A [Terraform] module that acts as a wrapper around the Terraform
[GitHub provider](https://www.terraform.io/docs/providers/github/index.html) and offers a more convenient and tested way
to manage GitHub Organizations following best practices.

*This module supports Terraform v0.14, v0.13 as well as v0.12.9 and above
and is compatible with the Terraform Github Provider v3 as well as v2.4 and above.*
_This module supports Terraform v0.14, v0.13 as well as v0.12.9 and above
and is compatible with the Terraform Github Provider v4, v3 as well as v2.4 and above._

- [Module Features](#module-features)
- [Getting Started](#getting-started)
Expand Down Expand Up @@ -50,7 +50,7 @@ To quickly start managing your GitHub Organization with Terraform:
```hcl
module "organization" {
source = "mineiros-io/organization/github"
version = "~> 0.3.0"
version = "~> 0.4.0"
create_all_members_team = true
Expand Down Expand Up @@ -84,35 +84,35 @@ See [variables.tf] and [examples/] for details and use-cases.

### Top-level Arguments

- **`blocked_users`**: *(Optional `set(string)`)*
- **`blocked_users`**: _(Optional `set(string)`)_

A list of usernames to be blocked from a GitHub organization.
Default is `[]`.

- **`members`**: *(Optional `set(string)`)*
- **`members`**: _(Optional `set(string)`)_

A list of users to be added to your organization with member role.
When applied, an invitation will be sent to the user to become part of the organization.
When destroyed, either the invitation will be cancelled or the user will be removed.
Default is `[]`.

- **`admins`**: *(Optional `set(string)`)*
- **`admins`**: _(Optional `set(string)`)_

A list of users to be added to your organization with admin role.
When applied, an invitation will be sent to the user to become part of the organization.
When destroyed, either the invitation will be cancelled or the user will be removed.
Default is `[]`.

- **`projects`**: *(Optional `list(project)`)*
- **`projects`**: _(Optional `list(project)`)_
Create and manage projects for the GitHub organization.
Default is `[]`.

- **`all_members_team_name`**: *(Optional `string`)*
- **`all_members_team_name`**: _(Optional `string`)_

The name of the team that contains all members of the organization.
Default is `null`.

- **`all_members_team_visibility`**: *(Optional `string`)*
- **`all_members_team_visibility`**: _(Optional `string`)_

The level of privacy for the team. Must be one of `secret` or `closed`.
Default is `secret`.
Expand Down Expand Up @@ -143,7 +143,7 @@ The following attributes are exported by the module:
## External Documentation

- Terraform Github Provider Documentation:
- https://www.terraform.io/docs/providers/github/index.html
- https://www.terraform.io/docs/providers/github/index.html

## Module Versioning

Expand Down Expand Up @@ -198,32 +198,26 @@ Copyright &copy; 2020 [Mineiros GmbH][homepage]

[homepage]: https://mineiros.io/?ref=terraform-github-organization
[[email protected]]: mailto:[email protected]

[badge-build]: https://github.com/mineiros-io/terraform-github-organization/workflows/CI/CD%20Pipeline/badge.svg
[badge-semver]: https://img.shields.io/github/v/tag/mineiros-io/terraform-github-organization.svg?label=latest&sort=semver
[badge-license]: https://img.shields.io/badge/license-Apache%202.0-brightgreen.svg
[badge-terraform]: https://img.shields.io/badge/terraform-0.14%20|%200.13%20|%200.12.20+-623CE4.svg?logo=terraform
[badge-slack]: https://img.shields.io/badge/[email protected]?logo=slack

[build-status]: https://github.com/mineiros-io/terraform-github-organization/actions
[releases-github]: https://github.com/mineiros-io/terraform-github-organization/releases

[badge-tf-gh]: https://img.shields.io/badge/GH-3%20and%202.4+-F8991D.svg?logo=terraform
[badge-tf-gh]: https://img.shields.io/badge/GH-4%20|%203%20|%202.4+-F8991D.svg?logo=terraform
[releases-github-provider]: https://github.com/terraform-providers/terraform-provider-github/releases

[releases-terraform]: https://github.com/hashicorp/terraform/releases
[apache20]: https://opensource.org/licenses/Apache-2.0
[slack]: https://join.slack.com/t/mineiros-community/shared_invite/zt-ehidestg-aLGoIENLVs6tvwJ11w9WGg

[Terraform]: https://www.terraform.io
[AWS]: https://aws.amazon.com/
[Semantic Versioning (SemVer)]: https://semver.org/

[terraform]: https://www.terraform.io
[aws]: https://aws.amazon.com/
[semantic versioning (semver)]: https://semver.org/
[examples/example/main.tf]: https://github.com/mineiros-io/terraform-github-organization/blob/master/examples/example/main.tf
[variables.tf]: https://github.com/mineiros-io/terraform-github-organization/blob/master/variables.tf
[examples/]: https://github.com/mineiros-io/terraform-github-organization/blob/master/examples
[Issues]: https://github.com/mineiros-io/terraform-github-organization/issues
[LICENSE]: https://github.com/mineiros-io/terraform-github-organization/blob/master/LICENSE
[Makefile]: https://github.com/mineiros-io/terraform-github-organization/blob/master/Makefile
[Pull Requests]: https://github.com/mineiros-io/terraform-github-organization/pulls
[Contribution Guidelines]: https://github.com/mineiros-io/terraform-github-organization/blob/master/CONTRIBUTING.md
[issues]: https://github.com/mineiros-io/terraform-github-organization/issues
[license]: https://github.com/mineiros-io/terraform-github-organization/blob/master/LICENSE
[makefile]: https://github.com/mineiros-io/terraform-github-organization/blob/master/Makefile
[pull requests]: https://github.com/mineiros-io/terraform-github-organization/pulls
[contribution guidelines]: https://github.com/mineiros-io/terraform-github-organization/blob/master/CONTRIBUTING.md
2 changes: 1 addition & 1 deletion examples/organization/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ provider "github" {

module "organization" {
source = "mineiros-io/organization/github"
version = "~> 0.3.0"
version = "~> 0.4.0"

all_members_team_name = "everyone"
all_members_team_visibility = "closed"
Expand Down
2 changes: 1 addition & 1 deletion versions.tf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ terraform {
required_version = ">= 0.12.20, < 0.15"

required_providers {
github = ">= 2.4, < 4.0"
github = ">= 2.4, < 5.0"
}
}

0 comments on commit 612b28e

Please sign in to comment.