github mirror timer absent on kai-server - fleet-wide mirror lag; installer not ansible-converged + stale path #329

Open
opened 2026-06-15 12:54:20 +00:00 by coilysiren · 0 comments
Owner

Symptom

make ansible-sync flags ~25 repos with DRIFT github!=origin, github:+N/-0. Verified this is the GitHub mirror lagging behind canonical Forgejo (local == origin, github behind by N), not divergence or data loss.

Root cause

The push-mirror is a systemd timer on kai-server (coilysiren-github-mirror.timer, OnCalendar=*-*-* 04:15:00). It is not installed on kai-server:

$ systemctl list-timers --all | grep -i mirror   # (empty)
$ systemctl list-unit-files | grep -i mirror      # (empty)

So Forgejo -> GitHub mirroring has not run, and the mirror has drifted fleet-wide.

Contributing problems

  1. scripts/install-coilysiren-github-mirror.sh is a manual installer, not referenced from ansible/, bootstrap.sh, or the Makefile. The timer can silently be absent and ansible-sync will not converge it. It should be an ansible role (rollout belongs in ansible per the authoring-vs-rollout split).
  2. The installer's INFRA_SRC default is the pre-migration path /home/kai/projects/coilysiren/infrastructure; canonical is now /home/kai/projects/coilyco-flight-deck/infrastructure.

Suggested fix

  • Add an ansible role that installs + enables coilysiren-github-mirror.{service,timer} on kai-server, folded into ansible-sync.
  • Fix the INFRA_SRC default path.
  • One-time: reinstall the timer and fire scripts/coilysiren-github-mirror.sh once to catch the mirror up.

Found while triaging the ansible-sync freshness gate.

## Symptom `make ansible-sync` flags ~25 repos with `DRIFT github!=origin, github:+N/-0`. Verified this is the **GitHub mirror lagging behind canonical Forgejo** (local == origin, github behind by N), not divergence or data loss. ## Root cause The push-mirror is a systemd timer on kai-server (`coilysiren-github-mirror.timer`, `OnCalendar=*-*-* 04:15:00`). It is **not installed on kai-server**: ``` $ systemctl list-timers --all | grep -i mirror # (empty) $ systemctl list-unit-files | grep -i mirror # (empty) ``` So Forgejo -> GitHub mirroring has not run, and the mirror has drifted fleet-wide. ## Contributing problems 1. `scripts/install-coilysiren-github-mirror.sh` is a **manual** installer, not referenced from `ansible/`, `bootstrap.sh`, or the Makefile. The timer can silently be absent and `ansible-sync` will not converge it. It should be an ansible role (rollout belongs in ansible per the authoring-vs-rollout split). 2. The installer's `INFRA_SRC` default is the **pre-migration path** `/home/kai/projects/coilysiren/infrastructure`; canonical is now `/home/kai/projects/coilyco-flight-deck/infrastructure`. ## Suggested fix - Add an ansible role that installs + enables `coilysiren-github-mirror.{service,timer}` on kai-server, folded into `ansible-sync`. - Fix the `INFRA_SRC` default path. - One-time: reinstall the timer and fire `scripts/coilysiren-github-mirror.sh` once to catch the mirror up. Found while triaging the ansible-sync freshness gate.
Sign in to join this conversation.
No description provided.