ci: restore bump-prod-compose auto-deploy on v* release #275

Merged
timothy merged 1 commits from ci/restore-auto-pin into main 2026-07-11 21:54:05 +02:00
Owner

Restores the prod GitOps auto-deploy job that was designed on the never-merged ci/auto-bump-prod-compose branch (3d6ac883). Because it never landed, v26.5.0/v26.6.0 did not auto-bump the server-management compose pin (it's still 26.5.0), even though the docs described the auto-bump as live.

What it does

On a v* tag, after the test-gated image builds (:prod + :<version>), the new bump-prod-compose job rewrites the pinned ersatztv:<version> tag in docker/bumblebee/stacks/media-servers/compose.yaml and pushes to server-management master → the Gitea→Komodo webhook redeploys prod with a pre-deploy backup. Idempotent (no-op if already pinned).

Credentials (already provisioned — this only adds the job)

  • ersatztv-ci-deploy write deploy key (id 5) on timothy/server-management ✅
  • SERVERMGMT_DEPLOY_KEY Actions secret in this repo ✅

Notes

  • needs: [build] + if: startsWith(github.ref, 'refs/tags/v') — only runs on releases, only after the image is built (a failed test-gate → no deploy).
  • server-management's default branch is master (verified) → git push origin HEAD:master.
  • Does not help the in-flight v26.7.0 (already tagged under the old workflow — bumped manually this session); takes effect from the next release.

Docs: docs/ci-cd.md release procedure updated + corrected the stale "prod pins :prod" claim (prod pins the immutable :<version> tag since 2026-07-07).

🤖 Generated with Claude Code

Restores the prod GitOps auto-deploy job that was designed on the never-merged `ci/auto-bump-prod-compose` branch (`3d6ac883`). Because it never landed, `v26.5.0`/`v26.6.0` did **not** auto-bump the server-management compose pin (it's still `26.5.0`), even though the docs described the auto-bump as live. ## What it does On a `v*` tag, after the test-gated image builds (`:prod` + `:<version>`), the new `bump-prod-compose` job rewrites the pinned `ersatztv:<version>` tag in `docker/bumblebee/stacks/media-servers/compose.yaml` and pushes to server-management `master` → the Gitea→Komodo webhook redeploys prod with a pre-deploy backup. Idempotent (no-op if already pinned). ## Credentials (already provisioned — this only adds the job) - `ersatztv-ci-deploy` **write** deploy key (id 5) on `timothy/server-management` ✅ - `SERVERMGMT_DEPLOY_KEY` Actions secret in this repo ✅ ## Notes - `needs: [build]` + `if: startsWith(github.ref, 'refs/tags/v')` — only runs on releases, only after the image is built (a failed test-gate → no deploy). - server-management's default branch is `master` (verified) → `git push origin HEAD:master`. - Does **not** help the in-flight `v26.7.0` (already tagged under the old workflow — bumped manually this session); takes effect from the next release. Docs: `docs/ci-cd.md` release procedure updated + corrected the stale "prod pins `:prod`" claim (prod pins the immutable `:<version>` tag since 2026-07-07). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
timothy added 1 commit 2026-07-11 21:45:12 +02:00
ci: restore bump-prod-compose auto-deploy job on v* release
Build ErsatzTV Image / Docs update reminder (pull_request) Successful in 6s
Build ErsatzTV Image / EF migration integrity (SQLite + MySql) (pull_request) Successful in 4m32s
Build ErsatzTV Image / Build & test (.NET) (pull_request) Successful in 5m44s
Build ErsatzTV Image / Build & push image (amd64) (pull_request) Has been skipped
Build ErsatzTV Image / Bump prod compose tag (server-management) (pull_request) Has been skipped
Build ErsatzTV Image / Docs update reminder (push) Has been skipped
Build ErsatzTV Image / Build & test (.NET) (push) Successful in 8m8s
Build ErsatzTV Image / EF migration integrity (SQLite + MySql) (push) Successful in 9m59s
Build ErsatzTV Image / Build & push image (amd64) (push) Successful in 7m9s
Build ErsatzTV Image / Bump prod compose tag (server-management) (push) Has been skipped
0ff21d5b8e
The auto-pin-to-prod job designed on the unmerged `ci/auto-bump-prod-compose`
branch (3d6ac883) never landed on main — so v* releases (v26.5.0, v26.6.0) did
NOT auto-bump the server-management compose pin (it sat at 26.5.0). The docs
(homelab-docs Docker/ErsatzTV.md, ci-cd.md) described the auto-bump as if live.

Restore the job verbatim (its credentials already exist: the `ersatztv-ci-deploy`
write deploy key, id 5, on server-management + the SERVERMGMT_DEPLOY_KEY secret
here). On a v* tag, after the test-gated image builds, it rewrites the pinned
`ersatztv:<version>` tag in docker/bumblebee/stacks/media-servers/compose.yaml
and pushes to server-management `master` → the Gitea->Komodo webhook redeploys
prod with a pre-deploy backup. Idempotent (no-op if already pinned).

docs/ci-cd.md updated to match (release procedure + the stale ":prod pin" claim,
which was actually an immutable :<version> pin since 2026-07-07).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
timothy merged commit 0ff21d5b8e into main 2026-07-11 21:54:05 +02:00
timothy deleted branch ci/restore-auto-pin 2026-07-11 21:54:05 +02:00
Sign in to join this conversation.