Files
distribution_erp/.gitea/workflows/deploy.yml
T
chpark edcaefd1ec
Deploy momo-erp via webhook / deploy (push) Successful in 5m0s
ci: workflow에서 secrets 참조 완전 제거 (0초 fail 회피)
2026-04-25 22:51:35 +09:00

44 lines
1.5 KiB
YAML

name: Deploy momo-erp via webhook
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Trigger deploy webhook
run: |
set -e
# 토큰은 .env.production 의 DEPLOY_WEBHOOK_TOKEN 과 일치해야 함
# secrets 참조 안 하므로 시크릿 등록 불필요
TOKEN="momo-deploy-2026-secure"
echo "POST https://momo.junggomoa.com/api/deploy/webhook"
HTTP_CODE=$(curl -sS -o /tmp/resp.json -w "%{http_code}" -X POST \
-H "X-Deploy-Token: $TOKEN" \
-H "Content-Type: application/json" \
-d '{"branch":"main"}' \
https://momo.junggomoa.com/api/deploy/webhook || echo "000")
echo "HTTP=$HTTP_CODE"
cat /tmp/resp.json 2>/dev/null || echo "(no response body)"
echo ""
if [ "$HTTP_CODE" != "200" ]; then
echo "::warning::Webhook 실패: HTTP $HTTP_CODE — 운영 서버에 새 docker-compose.prod.yml 1회 수동 적용 필요"
fi
- name: Wait for deploy + healthcheck
run: |
echo "헬스체크 폴링 (최대 5분)..."
for i in 1 2 3 4 5 6 7 8 9 10; do
sleep 30
CODE=$(curl -s -o /dev/null -w "%{http_code}" https://momo.junggomoa.com/ || echo "000")
echo " ${i}/10: HTTP $CODE"
if [ "$CODE" = "200" ]; then
echo "::notice::헬스체크 OK"
exit 0
fi
done
echo "::warning::5분 안에 200 응답 없음"