This directory is the source of truth for the devantler-tech org's GitHub configuration, expressed as Crossplane managed resources (via provider-upjet-github).
On every v* tag, cd.yaml publishes this
directory as a cosign-signed OCI artifact to
ghcr.io/devantler-tech/github-config/manifests. The
platform cluster onboards it as
the github-config tenant: it verifies the signature, then Flux + Crossplane
reconcile the live GitHub org to match these manifests — including reverting
out-of-band changes made in the GitHub UI.
repositories/— oneRepositoryper managed repo.teams/— oneTeamper file (themaintainersteam, Observe-adopted).team-memberships/— oneTeamMembershipper file (add-<user>-to-<team>.yaml).team-repositories/— oneTeamRepositoryper file (grant-<team>-on-<repo>.yaml), each granting a team a permission on a repo.labels/— oneIssueLabelsper managed repo. The canonical org label taxonomy lives once inlabels/kustomization.yaml(a shared patch appended to every repo); each<repo>.yamladds only that repo's Dependabot/Renovate ecosystem extras. Authoritative — out-of-band label drift is reverted. This is the Crossplane replacement for the old EndBug/label-sync workflow.organization-rulesets/— oneOrganizationRulesetper file (org-wide branch/tag protection). 10 existing org rulesets are adopted Observe-first (read-only) + 1 net-newv*tag-protection ruleset is managed. The 10 org rulesets the provider can't yet express stay UI-managed — seeorganization-rulesets/README.mdfor the full importability matrix and the push/tag/Actions-policy analysis.repository-rulesets/— oneRepositoryRulesetper file (<verb>-on-<repo>.yaml), each a repo-scoped rule adopted Observe-first.repository-permissions/— oneRepositoryPermissionsper managed repo enforcing Require actions to be pinned to a full-length commit SHA (sha_pinning_required). The policy is asserted once via a shared patch inrepository-permissions/kustomization.yaml; scope is every repo inlabels/exceptactions. Requires a provider-upjet-github release embedding terraform-provider-github ≥ 6.11.0 (the field is absent in the deployed v0.19.1) and activation ofrepositorypermissions.actions.github.m.upbound.ioin the platform MRAP.
See the platform repo's
docs/github-management.md
for the architecture, the GitHub App credential setup, and the Observe-first
adoption flow for bringing an existing repository under management without any
risk of recreating or deleting it.