integrations / integrations/terraform-provider-github
[FEAT]: Implement complete management of org role assignments
- Dominant language
- Go
- Stars
- 1.2k
- Forks
- 1k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 8
Description
### Describe the need
In the current implementation the `github_organization_role_user` and `github_organization_role_team` resources support assigning a role to a user or a team, but they do not allow for authoritative control of the role assignment. Specifically, I cannot use terraform to specify that a role should not be assigned to anyone individually ("assign this role to an empty set of users").
Perhaps, new resources, `github_organization_role_teams` and `github_organization_role_users`, could be implemented to declaratively specify complete lists of teams and users to assign a role to?
### GitHub Installation Type
- [x] GitHub.com (Free, Pro, or Team)
- [ ] GitHub Enterprise Server (on-premises)
- [x] GitHub Enterprise Cloud with Personal Accounts (github.com)
- [x] GitHub Enterprise Cloud with Managed Users/EMU (github.com)
- [ ] GitHub Enterprise Cloud with Data Residency (*.ghe.com)
- [ ] I don't know
### Relevant log output
```shell
```
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
Start by reading the existing github_organization_role_user and github_organization_role_team resources and the provider's resource patterns. Determine how complete user and team assignment lists, including empty lists, should be represented and reconciled. Done means Terraform can authoritatively manage the full assignments for each role, including removing all individual assignments.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, go, terraform
- Domain
- devops, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100