Add authenticated GitHub PAT for Forgejo mirror sync (#269)
## Summary - **mirror-create**: Auto-includes GitHub PAT from 1Password for authenticated upstream fetches at mirror creation time - **mirror-update-pats**: New mise task that SSHes into indri and rewrites the git remote URL in every GitHub mirror's bare repo config to embed the PAT. Idempotent, supports `--dry-run` - **app.ini.j2**: Explicit `[mirror]` section with `DEFAULT_INTERVAL = 8h` and `MIN_INTERVAL = 10m` (bakes in the defaults for visibility) - **manage-forgejo-mirrors**: New how-to doc covering mirror creation, PAT storage, the `mirror-update-pats` task, and the full 20-day PAT rotation procedure ## Context GitHub tightened unauthenticated rate limits for git clone/fetch in May 2025. With 23 GitHub mirrors syncing every 8 hours, authenticated fetches avoid throttling. The PAT is stored in 1Password (`Forgejo Secrets` → `github-mirror-pat`) and has been applied to all existing mirrors. ## Deployment and Testing - [x] `mirror-update-pats` dry-run verified (23 mirrors detected) - [x] `mirror-update-pats` applied to all 23 GitHub mirrors on indri - [x] Idempotency confirmed (re-run shows 0 updated, 23 skipped) - [ ] Provision indri with `--tags forgejo` to apply `[mirror]` config - [ ] Trigger a manual mirror sync and verify success in Forgejo UI Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/269
This commit is contained in:
parent
23dc79058e
commit
84338c32c2
7 changed files with 234 additions and 2 deletions
|
|
@ -50,6 +50,7 @@ Run `mise tasks --sort name` for the live list with descriptions.
|
|||
| `container-build-and-release` | Trigger container build workflows via Forgejo API |
|
||||
| `container-version-check` | Validate version consistency across Dockerfiles, nix, and manifests |
|
||||
| `mirror-create` | Create an upstream mirror in the `mirrors/` Forgejo org |
|
||||
| `mirror-update-pats` | Update GitHub PAT on all mirror repos on indri |
|
||||
|
||||
## Git & Forge
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue