From 027bc8d0bc2891b56bf2f5447a3b4ca5bec1996f Mon Sep 17 00:00:00 2001 From: Mikhail Lobanov Date: Thu, 15 Oct 2026 15:47:33 +0300 Subject: [PATCH] Verify health after rollback --- .gitea/workflows/ci.yaml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 98fa89f..2b55a0d 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -111,6 +111,25 @@ jobs: docker rm devops-platform || true if ! IMAGE="$OLD_IMAGE" docker compose up -d --no-build app; then echo "ERROR: rollback failed; manual recovery required" + exit 1 fi + + ROLLBACK_HEALTHY=false + + for attempt in $(seq 1 15); do + if docker exec devops-platform python -c \ + "import urllib.request; r=urllib.request.urlopen('http://127.0.0.1:8000/health', timeout=2); assert r.status == 200"; then + ROLLBACK_HEALTHY=true + break + fi + sleep 2 + done + + if [ "$ROLLBACK_HEALTHY" = true ]; then + echo "Rollback successful; previous version is healthy" + else + echo "ERROR: rollback container failed health check; manual recovery required" + fi + exit 1 fi