fix(deploy): stop running the smoke suite twice and crying wolf
Some checks failed
CI/CD / lint (pull_request) Successful in 1m14s
CI/CD / test (pull_request) Successful in 1m25s
CI/CD / typecheck (pull_request) Successful in 3m5s
CI/CD / smoke (pull_request) Failing after 1m57s
CI/CD / build (pull_request) Successful in 5m9s
CI/CD / publish (pull_request) Has been skipped
Some checks failed
CI/CD / lint (pull_request) Successful in 1m14s
CI/CD / test (pull_request) Successful in 1m25s
CI/CD / typecheck (pull_request) Successful in 3m5s
CI/CD / smoke (pull_request) Failing after 1m57s
CI/CD / build (pull_request) Successful in 5m9s
CI/CD / publish (pull_request) Has been skipped
Step 7 called release.sh — which restarts mcplocal and runs the smoke suite
against the binary it just installed — and then restarted mcplocal and ran the
whole suite again. Two full suites inside a minute trips mcpd's rate limiter,
so the second run came back with six 429s and printed
SMOKE TESTS FAILED — system may be unhealthy. Consider rollback
over a deploy that was fine. Seen for real on 35d506d: the first suite was
162/162 green, the second failed only on `mcpd returned 429: Rate limit
exceeded`, and a clean re-run afterwards was 162/162 again.
A deploy script that recommends rolling back a healthy release is worse than
one that says nothing. One run, one verdict — release.sh's exit status.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JNXFvxanvM6uiFcb4Mp3xU
This commit is contained in:
@@ -187,14 +187,16 @@ trap - ERR
|
||||
|
||||
# ── 7. RPM + smoke ──
|
||||
say "7/7 Build/install CLI RPM + smoke tests"
|
||||
bash scripts/release.sh
|
||||
systemctl --user restart mcplocal && sleep 2
|
||||
if pnpm test:smoke > /tmp/deploy-smoke.log 2>&1; then
|
||||
grep -E "Tests |passed" /tmp/deploy-smoke.log | tail -2
|
||||
# release.sh already restarts mcplocal and runs the smoke suite against the
|
||||
# binary it just installed. This step used to restart and re-run it a second
|
||||
# time, which put two full suites inside a minute and tripped mcpd's rate
|
||||
# limiter: the second run failed with 429s and printed a false
|
||||
# "SMOKE TESTS FAILED — consider rollback" over a perfectly healthy deploy.
|
||||
# One run, one verdict.
|
||||
if bash scripts/release.sh; then
|
||||
say "Deploy complete — $TAG live. Rollback tag: $ROLLBACK_TAG"
|
||||
else
|
||||
tail -40 /tmp/deploy-smoke.log
|
||||
warn "SMOKE TESTS FAILED — system may be unhealthy. Consider rollback:"
|
||||
warn "RELEASE OR SMOKE TESTS FAILED — system may be unhealthy. Consider rollback:"
|
||||
rollback_recipe
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user