process-analytics / .github

Common configuration and resources for the @process-analytics organization
https://process-analytics.dev/
Apache License 2.0
1 stars 0 forks source link

[FEAT] Find a way to enforce the same settings for all repositories of the GitHub organization #25

Open tbouffard opened 1 year ago

tbouffard commented 1 year ago

Is your feature request related to a problem? Please describe. There are a lot of things we want to make consistent across all repositories. Currently, except default labels that can be configured at organization level, there is no way to ensure all repositories share the same settings. We a new settings is made available by GitHub, we have to manually activate it in all repositories

Describe the solution you'd like I would like we find ways to automate the settings synchronization.

GitHub provides API and some GitHub Actions exist to handle such situation. We probably need to provide some level of flexibility: some settings must be set everywhere, some depend on the repository. So, we should provide a way to configure the settings to be applied to a given repository. The settings should be apply periodically (with GH actions).

Describe alternatives you've considered Continue to do it manually. This is error prone, we are missing some settings and this is painful. We have more and more repositories and this is unmaintainable.

Additional context Minimal list of settings to synchronize for "Pull Request"

Some other settings depends on the repository like projects or discussions activation.

This also involves some administrative GitHub workflow like the one that ensures PR titles follow "conventional commits": currently, we have to manually create the workflow in all repositories. See https://github.com/orgs/process-analytics/projects/6 for more details

Possible solutions

NOTE: non exhaustive list, it is enriched periodically

various sources

from Homebrew

label synchronization