Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: Manage the org programatically #40

Open
zimbatm opened this issue Nov 30, 2024 · 0 comments
Open

RFC: Manage the org programatically #40

zimbatm opened this issue Nov 30, 2024 · 0 comments

Comments

@zimbatm
Copy link
Member

zimbatm commented Nov 30, 2024

A while back, @infinisil and I considered managing the GitHub Organization as code. To get something out quickly, we decided to start with today's text-only format.

The vision for the code approach was that any members could submit PRs to change their team membership instead of asking us to do the changes manually. Assuming CI is applying the changes, this would allow the SC to delegate ownership of the org more effectively while maintaining a level of transparency since all the changes are happening through code now. The "org" team can still be around as a fallback but doesn't need to be invoked as often.

A few months back, I met with the wonderful people behind https://www.ipdx.co/ (@galargh and @laurentsenta), and they have a ready-made solution: https://github.com/ipdxco/github-as-code . It works both ways: the data model updates the GitHub org settings, and the org setting changes also update the data model. It's based on Terraform.

Before doing anything, I'd like to get the feedback of the SC and other org owners on whether that would be a good idea. Let me know if I should get into more details.

In terms of migration paths, I see something like this:

  1. Configure a new Terraform backend in AWS with the Infra team.
  2. Fork https://github.com/ipdxco/github-as-code as an org-2 repo.
  3. Setup CI.
  4. Leave the nixpkgs-maintainers team out of this for now, since it is managed by a separate bot.
  5. Party!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant