Deploy topology is split: Gitea→CT114 (dev) vs GitHub→CT111 (prod), risk of drift #18

Closed
opened 2026-07-19 22:16:33 -06:00 by jhodgkin · 2 comments
Owner

lisilou.jerodrigged.com → NPM (CT102) → CT111, deployed by GitHub Actions from github.com/jhodgkin/lisilou-portfolio; the Gitea repo deploys to CT114 (dev). The public site was previously 20 commits stale because pushes stopped reaching GitHub — both remotes are currently synced and green, but:

  • keeping two remotes in sync manually will drift again
  • CT111 and CT114 have separate SQLite DBs — real bookings live on CT111 only
  • homelab/docs/infrastructure.md is stale (lists CT114 as Keycloak; CT111 notes don't mention the GitHub runner deploy chain)

Options to evaluate: mirror Gitea→GitHub automatically, point NPM at CT114 directly, or move prod deploy to Gitea Actions and retire the GitHub mirror.

Migrated from docs/BACKLOG-2026-07-16.md (B4).

`lisilou.jerodrigged.com` → NPM (CT102) → **CT111**, deployed by **GitHub** Actions from github.com/jhodgkin/lisilou-portfolio; the Gitea repo deploys to **CT114** (dev). The public site was previously 20 commits stale because pushes stopped reaching GitHub — both remotes are currently synced and green, but: - keeping two remotes in sync manually will drift again - CT111 and CT114 have separate SQLite DBs — real bookings live on CT111 only - `homelab/docs/infrastructure.md` is stale (lists CT114 as Keycloak; CT111 notes don't mention the GitHub runner deploy chain) **Options to evaluate:** mirror Gitea→GitHub automatically, point NPM at CT114 directly, or move prod deploy to Gitea Actions and retire the GitHub mirror. Migrated from `docs/BACKLOG-2026-07-16.md` (B4).
Author
Owner

Implemented the Gitea-only two-pipeline design (commit 016256c on main): dev keeps auto-deploying on every push to main and now also publishes SHA-tagged images to git.jerodrigged.com's container registry (best-effort - verified it does not block dev deploys when the registry secret is absent, run #147). Prod now deploys only on git push origin main:prod and only ever pulls a pre-built image - never rebuilds - so prod is guaranteed to run the exact artifact dev already validated.

Still needed before the prod path is live: PROD_USER secret (deploy user on CT111) and REGISTRY_TOKEN (a Gitea access token scoped write:package+read:package). PROD_SSH_KEY, PROD_HOST, and REGISTRY_USER are already set. The generated public key still needs to be authorized in CT111's authorized_keys.

Details in lisilou-portfolio/CLAUDE.md CI/CD section.

Implemented the Gitea-only two-pipeline design (commit 016256c on main): dev keeps auto-deploying on every push to main and now also publishes SHA-tagged images to git.jerodrigged.com's container registry (best-effort - verified it does not block dev deploys when the registry secret is absent, run #147). Prod now deploys only on `git push origin main:prod` and *only ever pulls* a pre-built image - never rebuilds - so prod is guaranteed to run the exact artifact dev already validated. Still needed before the prod path is live: `PROD_USER` secret (deploy user on CT111) and `REGISTRY_TOKEN` (a Gitea access token scoped write:package+read:package). `PROD_SSH_KEY`, `PROD_HOST`, and `REGISTRY_USER` are already set. The generated public key still needs to be authorized in CT111's authorized_keys. Details in lisilou-portfolio/CLAUDE.md CI/CD section.
Author
Owner

Resolved as a side effect of tonight's (2026-07-20) work building the registry-based prod promotion pipeline (see commit 016256c and onward). Prod no longer deploys via GitHub Actions at all - CT111's git remote was repointed to Gitea, and it now deploys exclusively via git push origin main:prod, pulling a pre-built image identical to what dev already validated. Both dev and prod are Gitea-only now; the GitHub mirror is unused. Verified via matching image digests between CT114 and CT111 across two separate promotions tonight.

Resolved as a side effect of tonight's (2026-07-20) work building the registry-based prod promotion pipeline (see commit 016256c and onward). Prod no longer deploys via GitHub Actions at all - CT111's git remote was repointed to Gitea, and it now deploys exclusively via `git push origin main:prod`, pulling a pre-built image identical to what dev already validated. Both dev and prod are Gitea-only now; the GitHub mirror is unused. Verified via matching image digests between CT114 and CT111 across two separate promotions tonight.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jhodgkin/lisilou-portfolio#18