docs(forgejo): onboarding a repo is two remotes, not a mirror #206

Merged
kblack0610 merged 1 commit from docs/forgejo-repo-onboarding into master 2026-08-28 14:10:08 +00:00
Owner

The Mirroring section named home-config as a pull mirror from GitHub. It is not one (is_mirror=0) and never has been - Flux reads the Forgejo copy, so a push to GitHub alone gets overwritten. platform is the only mirror on the instance, and only because it is a BlackNBrownStudios org repo this account does not own.

Taking that line as the house pattern costs a GitHub credential inside Forgejo for nothing. Replaces it with what the personal repos actually do, plus three things that are invisible from the UI and were each verified against the live instance:

  • runners register instance-level (owner_id=0, repo_id=0), so a new repo needs no registration step
  • Actions secrets are repo-level with no user/org inheritance, so each repo needs its own copy
  • CLOUDFLARE_API_TOKEN, the CLOUDFLARE_*_ZONE_ID pair and SLACK_BOT_TOKEN are set on no repo on this instance, so those workflow jobs have always no-opped through their empty-value guards

Also adds the scripted onboarding path (create repo, push, set secrets) so the next one does not go through the UI.

Docs only, no manifest change.

The Mirroring section named home-config as a pull mirror from GitHub. It is not one (`is_mirror=0`) and never has been - Flux reads the Forgejo copy, so a push to GitHub alone gets overwritten. `platform` is the only mirror on the instance, and only because it is a BlackNBrownStudios org repo this account does not own. Taking that line as the house pattern costs a GitHub credential inside Forgejo for nothing. Replaces it with what the personal repos actually do, plus three things that are invisible from the UI and were each verified against the live instance: - runners register instance-level (`owner_id=0, repo_id=0`), so a new repo needs no registration step - Actions secrets are repo-level with no user/org inheritance, so each repo needs its own copy - `CLOUDFLARE_API_TOKEN`, the `CLOUDFLARE_*_ZONE_ID` pair and `SLACK_BOT_TOKEN` are set on no repo on this instance, so those workflow jobs have always no-opped through their empty-value guards Also adds the scripted onboarding path (create repo, push, set secrets) so the next one does not go through the UI. Docs only, no manifest change.
docs(forgejo): onboarding a repo is two remotes, not a mirror
All checks were successful
checks / kustomize-builds (pull_request) Successful in 7s
checks / fleet-roster (pull_request) Successful in 8s
8ebf3521d1
The Mirroring section claimed home-config was a pull mirror from GitHub.
It is not, and never has been: `is_mirror=0`, Flux reads the Forgejo copy,
and pushing to GitHub alone gets overwritten. `platform` is the only
mirror on the instance, and only because it is an org repo this account
does not own.

Reading that line as the house pattern costs a GitHub credential inside
Forgejo for no reason. Documents what the personal repos actually do
(two remotes, no mirror, no new credential), plus the pieces that are
invisible from the UI: runners register instance-level so a new repo
needs none, secrets are repo-level with no inheritance, and the
Cloudflare/Slack secrets the deploy workflows reference are set on no
repo at all, so those jobs have always no-opped.
kblack0610 deleted branch docs/forgejo-repo-onboarding 2026-08-28 14:10:09 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kblack0610/home-config!206
No description provided.