Validation: Bug #405 - update-kustomize-tag skipped when CI tests fail
Validation: Bug #405 — update-kustomize-tag skipped when CI tests fail
Ticket
Forgejo issue: forgejo_admin/basketball-api#405
Board item: #901 on board-westside-basketball
Merged PR: forgejo_admin/basketball-api#407
Labels: story:WS-S17, arch:ci, type:bug
What was shipped: CI pipeline fix so
Board item: #901 on board-westside-basketball
Merged PR: forgejo_admin/basketball-api#407
Labels: story:WS-S17, arch:ci, type:bug
What was shipped: CI pipeline fix so
update-kustomize-tag step runs even when test step fails, preventing image tag propagation from being silently skipped.Environment
Production k3s cluster, namespace
basketball-api, ArgoCD-managed deployment. Woodpecker CI pipeline #420.Checks
| # | Criterion | How to Verify | Result | Evidence |
|---|---|---|---|---|
| 1 | Pipeline #420: build-and-push succeeded despite test failure | Woodpecker get_pipeline_status | PASS | Pipeline #420: test=failure, build-and-push=success, update-kustomize-tag=success. This IS the fix — previously kustomize-tag was skipped when test failed. |
| 2 | Image tag propagated to pod | <code>kubectl get pods -n basketball-api -o jsonpath image</code> | PASS | Pod running image <code>harbor.tail5b443a.ts.net/basketball-api/api:e9362ade17815be398db7f2fb898bef0f8d1478c</code> — matches pipeline #420 merge commit SHA. |
| 3 | Pod running, restarts = 0 | <code>kubectl get pods -n basketball-api</code> | PASS | <code>basketball-api-7784854bb9-4t7qf 1/1 Running 0 4m</code> |
| 4 | ArgoCD synced and healthy | <code>kubectl get application -n argocd basketball-api</code> | PASS | Sync: Synced, Health: Healthy |
| 5 | Smoke test API reachable | <code>curl /docs</code> | PASS | HTTP 200 on <code>https://basketball-api.tail5b443a.ts.net/docs</code> |
Verdict
PASS — All checks green. Pipeline #420 proves the fix:
update-kustomize-tag ran successfully despite test step failure. Image deployed and pod healthy with 0 restarts.Discovered Issues
None. The
test step failure in pipeline #420 is a pre-existing test issue, not caused by this PR. The fix is specifically that deployment no longer depends on test success.