django-commons / membership

Membership repository for the django-commons organization.
MIT License
24 stars 2 forks source link

Manage organization teams, memberships and access using a configuration file #28

Closed cunla closed 2 months ago

cunla commented 4 months ago

Please let us know what you need or would like to know.

We should explore managing the GitHub org using a configuration file instead of manually. Using tools such as https://github.com/eclipse-csi/otterdog or https://github.com/cilium/team-manager/tree/main

Which project(s) does this effect if any?

All

joshuadavidthomas commented 3 months ago

There is also https://github.com/github/safe-settings

tim-schilling commented 2 months ago

Oh, I like safe-settings a lot. That would be helpful for setting up the repository settings automatically.

The team-manager project seems like a good choice for managing the members of each team.

joshuadavidthomas commented 2 months ago

I've been running it for the past month or so at work. After the initial setup hurdle, it's been relatively painless.

One issue concerning Django Commons is it does require a running application somewhere to function as the GH bot. I do think it would be very useful to the org, but I'm not sure what the procedure would be for deciding where to host it and who would be responsible for the bill.

It's not a resource hog, so it should be cheap wherever it would end up. I've been running it in fly.io with 1 shared CPU and 512 ram.

tim-schilling commented 2 months ago

Hmm, honestly I'm not sure that overhead is worth it. I know any of us could cover that cost, but it's again asking someone to make a significant investment of time and interest over the long haul. If the commons were ever adopted by the DSF (not recommending it now since we're just starting), that becomes a much easier ask.

joshuadavidthomas commented 2 months ago

Yeah, that's why I brought it up. I'm in total agreement that it's probably too much of a lift this early in the org's existence.

The big thing I like about it is that the GitHub repository settings are in git as yaml, so you get history tracking and reviews on potential changes through PRs. I wonder if you couldn't get away with wiring up a custom GHA that accomplishes most of what you get out of the box with safe-settings.

Or alternatively, maybe one of the other tools mentioned at the top can handle this without a running application.

cunla commented 2 months ago

I am going to see whether I can configure otterdog on the controls repo this weekend.

tim-schilling commented 2 months ago

Woo! Well done, thank you @cunla!