From ab43a53a79c05a7e3919e8737eb3d8e52c3f0c21 Mon Sep 17 00:00:00 2001 From: htlee Date: Wed, 18 Mar 2026 06:13:13 +0900 Subject: [PATCH] =?UTF-8?q?fix(deploy):=20CI=EC=97=90=EC=84=9C=20=EC=A7=81?= =?UTF-8?q?=EC=A0=91=20=EB=B0=B1=EC=97=94=EB=93=9C=20=EC=84=9C=EB=B9=84?= =?UTF-8?q?=EC=8A=A4=20=EC=9E=AC=EC=8B=9C=EC=9E=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - nsenter로 호스트 네임스페이스 접근하여 systemctl restart 실행 - systemd 서비스 파일 변경 시 자동 교체 + daemon-reload - .deploy-trigger 이벤트 감지 방식에서 직접 명령 방식으로 변경 Co-Authored-By: Claude Opus 4.6 (1M context) --- .gitea/workflows/deploy.yml | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index cbb5b55..dc70dec 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -80,7 +80,25 @@ jobs: cp deploy/kcg-backend-watcher.service $DEPLOY_DIR/kcg-backend-watcher.service cp deploy/kcg-backend-watcher.path $DEPLOY_DIR/kcg-backend-watcher.path - # JAR 교체 + 재시작 트리거 + # JAR 교체 cp backend/target/kcg.jar $DEPLOY_DIR/kcg.jar - date '+%s' > $DEPLOY_DIR/.deploy-trigger echo "Backend deployed at $(date '+%Y-%m-%d %H:%M:%S')" + + - name: Restart backend service + run: | + # systemd 서비스 파일 갱신 + 백엔드 재시작 (호스트 네임스페이스) + nsenter -t 1 -m -- /bin/bash -c ' + DEPLOY_DIR=/devdata/services/kcg/backend + SYSTEMD_DIR=/etc/systemd/system + CHANGED=0 + for f in kcg-backend.service kcg-backend-watcher.service kcg-backend-watcher.path; do + if [ -f "$DEPLOY_DIR/$f" ] && ! diff -q "$DEPLOY_DIR/$f" "$SYSTEMD_DIR/$f" >/dev/null 2>&1; then + cp "$DEPLOY_DIR/$f" "$SYSTEMD_DIR/$f" + CHANGED=1 + fi + done + [ "$CHANGED" = "1" ] && systemctl daemon-reload + systemctl restart kcg-backend + sleep 5 + systemctl is-active kcg-backend && echo "Backend restarted successfully" || echo "Backend failed to start" + ' -- 2.45.2