Peribolos is a CI utility maintained by the people at k8s that enables declaratively defining the GitHub Organisations' settings through a YAML file.
Benefits of adopting the declarative approach:
- Better visibility on changes made and the discussion surrounding it through Pull Requests
- Reduce the permissions needed by the maintainers
- Allows anyone to suggest amendments and audit the GitHub Organisation without needing administrative privileges
- Enforce certain users to be admins
- Allow management of multiple GitHub Organisations through a single pane of glass
An example of Peribolos implemented with GitHub Actions:
https://github.com/cloudfoundry/community/blob/main/.github/workflows/org-management.yml