Configure Forgejo push mirrors to GitHub fleet-wide (retire manual mirror syncs) #309
Labels
No labels
burndown-2026-06
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/infrastructure#309
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The 2026-06-12 fleet mirror sync (agentic-os-kai#662) found GitHub mirrors stale or diverged on most repos, and several fell behind again within hours of being synced. Root cause: nothing pushes Forgejo main to GitHub automatically - mirrors only advance when a human or agent pushes by hand.
Forgejo has native push mirroring (repo settings -> repository -> mirror settings, or POST /repos/{owner}/{repo}/push_mirrors with a GitHub token). Proposal: an ansible role (or a script in infrastructure) that walks the catalog and ensures every Forgejo repo with a GitHub twin has a push mirror configured, interval ~8h. That retires manual mirror syncs entirely, leaving scripts/sync-github-mirrors.sh (agentic-os-kai) for divergence repair only.
Note the interaction with GitHub rulesets: push mirroring force-pushes, so repos with non_fast_forward rules (coily, otel-a2a-relay, session-lattice, cli-guard) need the mirror token in the ruleset bypass list or the rules relaxed.