mirror of
https://github.com/profullstack/agentbbs.git
synced 2026-10-01 19:43:49 +00:00
ci(deploy): retry the :22 smoke test for up to ~2 minutes (#137)
The redeploy restarts agentbbs, and the smoke test could run before it had re-bound :22 (0.3 s after on the #136 deploy). One probe made most deploys go red while the BBS answered moments later. Probe up to 12 times, 10 s apart, and fail only if :22 never answers. Still a keyscan only, so no account is ever registered. Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f5c8e31d26
commit
eccfe67bc3
1 changed files with 15 additions and 6 deletions
17
.github/workflows/deploy.yml
vendored
17
.github/workflows/deploy.yml
vendored
|
|
@ -162,9 +162,18 @@ jobs:
|
||||||
# join@ connection would register the connecting key as a new account,
|
# join@ connection would register the connecting key as a new account,
|
||||||
# so we never complete a handshake here. Admin OpenSSH lives on the
|
# so we never complete a handshake here. Admin OpenSSH lives on the
|
||||||
# admin port, so anything serving :22 is agentbbs answering join@/bbs@.
|
# admin port, so anything serving :22 is agentbbs answering join@/bbs@.
|
||||||
|
#
|
||||||
|
# Retry: the redeploy above restarts agentbbs, and this step can start
|
||||||
|
# before it has re-bound :22. A single probe failed most deploys
|
||||||
|
# (red runs with the BBS answering fine moments later), so give it
|
||||||
|
# up to ~2 minutes and fail only if it never comes back.
|
||||||
|
for attempt in $(seq 1 12); do
|
||||||
if timeout 15 ssh-keyscan -T 10 -p 22 "$DEPLOY_HOST" 2>/dev/null | grep -q .; then
|
if timeout 15 ssh-keyscan -T 10 -p 22 "$DEPLOY_HOST" 2>/dev/null | grep -q .; then
|
||||||
echo "::notice::agentbbs is serving SSH on ${DEPLOY_HOST}:22 (join@ is reachable)"
|
echo "::notice::agentbbs is serving SSH on ${DEPLOY_HOST}:22 (join@ is reachable, attempt ${attempt})"
|
||||||
else
|
exit 0
|
||||||
echo "::error::nothing is serving SSH on ${DEPLOY_HOST}:22 — agentbbs may be down"
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
echo "attempt ${attempt}/12: nothing on ${DEPLOY_HOST}:22 yet, retrying in 10s"
|
||||||
|
sleep 10
|
||||||
|
done
|
||||||
|
echo "::error::nothing is serving SSH on ${DEPLOY_HOST}:22 after 12 attempts — agentbbs may be down"
|
||||||
|
exit 1
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue