diff --git a/.gitea/workflows/deploy-prod.yml b/.gitea/workflows/deploy-prod.yml index 9aecde9..8bf91fc 100644 --- a/.gitea/workflows/deploy-prod.yml +++ b/.gitea/workflows/deploy-prod.yml @@ -158,21 +158,21 @@ jobs: echo "--- [4/4] 헬스 체크 ---" ATTEMPTS=20 - for i in \\\$(seq 1 \\\$ATTEMPTS); do - STATUS=\\\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5000/ 2>/dev/null || echo "000") - if [ "\\\$STATUS" = "200" ]; then - echo "✓ 헬스체크 성공 (시도 \\\$i/\\\$ATTEMPTS, HTTP 200)" + for i in \$(seq 1 \$ATTEMPTS); do + STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5000/ 2>/dev/null || echo "000") + if [ "\$STATUS" = "200" ]; then + echo "✓ 헬스체크 성공 (시도 \$i/\$ATTEMPTS, HTTP 200)" # 구 배포 폴더 정리 (최근 5개만 보존) ls -1dt \$DEPLOY_HOME/deployments/quantengine_* 2>/dev/null | tail -n +6 | xargs rm -rf 2>/dev/null || true exit 0 fi - if [ "\\\$i" -eq "\\\$ATTEMPTS" ]; then + if [ "\$i" -eq "\$ATTEMPTS" ]; then echo "=== FATAL: 서비스가 헬스체크 응답을 하지 않음 ===" >&2 systemctl is-active ${{ env.SERVICE_NAME }} >&2 || true journalctl -u ${{ env.SERVICE_NAME }} --no-pager -n 50 >&2 exit 1 fi - echo " 대기 중... (\\\$i/\\\$ATTEMPTS, HTTP \\\$STATUS)" + echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)" sleep 3 done REMOTE