GitHub Repositories ​
All repositories in the Gardener GitHub organization are managed through Peribolos, a tool from the Kubernetes project that reconciles GitHub organization settings — including repositories, teams, and memberships — against a declarative configuration file.
How Repository Management Works ​
The source of truth for all repositories and their settings is the org.yaml file in the gardener/org repository. A Peribolos job runs periodically and reconciles the actual state of the GitHub organization against the configuration declared in that file.
This means:
- All repository changes must be made via
org.yaml— the Peribolos job will overwrite any manual changes made directly in GitHub. - Changes such as creating a repository, updating its description, adjusting team permissions, or toggling settings must be submitted as a pull request to
gardener/org.
Requesting a New Repository ​
To request the creation of a new repository in the Gardener organization:
- Open an issue in the
gardener/orgrepository using the provided template. - Fill in the required details, such as the repository name, description, and purpose.
- The org owners will review the request and, once approved, add the repository to
org.yamland submit the corresponding pull request.
Making Changes to Existing Repositories ​
To change the settings of an existing repository (e.g., update its description, visibility, or team access):
- Open a pull request against gardener/org that modifies the relevant entry in
config/org.yaml. - Describe the reason for the change in the pull request description.
- Once the pull request is merged, the Peribolos job picks up the change and applies it to the GitHub organization.