ci: push v<semver> tag so deploy-prod can pull it; point .env.prod at real prod paths #129
No reviewers
Labels
No labels
architecture
backend
bug
ci
config
database
docker
documentation
duplicate
enhancement
frontend
help wanted
invalid
issue-25
issue-26
issue-42
issue-65
issue-67
issue-82
migrations
p0-critical
p1-high
p2-medium
p3-low
performance
quality
question
security
state-management
testing
timezone
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
fastie81/honbu-manager!129
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/deploy-prod-tag-match"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
deploy-prod sets APP_VERSION=${{ github.ref_name }} (e.g. v3.4.3) and pulls forgejo.scrat.co.nz/fastie81/honbu-manager:v3.4.3, but build-release only pushed bare semver (3.4.3) + latest via docker/metadata-action - so deploy-prod would always fail to find the v-prefixed tag. This CI path has never run end-to-end (verified: registry only contains test-* tags).
Fix
Add type=semver,pattern=v{{version}} to build-release metadata tags so the pushed image is also tagged v3.4.x, matching what deploy-prod pulls.
Also: point .env.prod BACKUP_PATH/CONTENT_PATH at the real prod host paths. deploy-prod scp-copies this .env.prod onto the prod node, so it must carry the absolute split-mount paths (else the backup-dir collision fix is silently reverted on the next prod deploy). Production has already been migrated to these paths (see #128 for the code/config split).
Note
Production is already running the fixed image (production-latest from #128, verified healthy, DB intact, backup now valid/non-recursive). This PR finishes making the automated v-tag -> build-release -> deploy-prod loop actually work.
deploy-prod uses APP_VERSION=${{ github.ref_name }} (e.g. v3.4.3) to pull the image, but build-release only pushed bare semver (3.4.3) + latest, so the deploy would always fail to find v<ver>. Add type=semver,pattern=v{{version}} to build-release so the pushed tag matches what deploy-prod pulls. Also point .env.prod BACKUP_PATH/CONTENT_PATH at the real prod host paths (the CI deploy scp-copies this file to the prod node), so the split-mounts fix is applied on deploy rather than defaulting to relative ./paths.Updated (commit
65a3a74): the pipeline now builds ONE image (ci-<sha>, aliased tov<ver>/<ver>/<major>.<minor>/lateston v-tags) and promotes that same artifact through deploy-test -> deploy-prod. deploy-test (needs: build) exercises it on the test node; deploy-prod (needs: build, deploy-test) pushes the identical image to prod on version tags. Also fixes the v-tag pull mismatch and binds-p honbu-manager-productionso a prod deploy reuses the real data volumes..env.prodcarries absolute prod BACKUP_PATH/CONTENT_PATH so the #128 split-mount fix survives a CI deploy.