diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index a133719..e064c91 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -69,5 +69,18 @@ jobs: docker compose -f deploy/docker/docker-compose.yml --env-file deploy/docker/.env pull app docker compose -f deploy/docker/docker-compose.yml --env-file deploy/docker/.env up -d app docker compose -f deploy/docker/docker-compose.yml ps - curl -fsS "http://127.0.0.1:\${HOST_BIND_PORT:-3000}/api/docs" >/dev/null + HEALTH_URL="http://127.0.0.1:\${HOST_BIND_PORT:-3000}/api/docs" + HEALTH_OK=0 + for i in $(seq 1 30); do + if curl -fsS "${HEALTH_URL}" >/dev/null; then + HEALTH_OK=1 + break + fi + sleep 2 + done + if [ "${HEALTH_OK}" -ne 1 ]; then + docker compose -f deploy/docker/docker-compose.yml --env-file deploy/docker/.env logs --tail=200 app || true + echo "Health check failed: ${HEALTH_URL}" + exit 1 + fi EOF