From a29aadc5ffac60a1afc3df3652c002d92d974cbd Mon Sep 17 00:00:00 2001 From: sb Date: Sat, 11 Jul 2026 18:14:35 +0900 Subject: [PATCH] =?UTF-8?q?fix(ci):=20=EB=B0=B0=ED=8F=AC=20=EC=8B=9C=20jar?= =?UTF-8?q?=20=EA=B2=BD=EB=A1=9C=20=EC=9E=90=EA=B0=80=EC=B9=98=EC=9C=A0=20?= =?UTF-8?q?(=EC=BB=A8=ED=85=8C=EC=9D=B4=EB=84=88=20stop=E2=86=92=EA=B2=BD?= =?UTF-8?q?=EB=A1=9C=20=EC=A0=95=EB=A6=AC=E2=86=92=EB=B0=B0=EC=B9=98?= =?UTF-8?q?=E2=86=92=EC=9E=AC=EA=B8=B0=EB=8F=99)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 빈 디렉토리로 잘못 생성된 마운트 경로(corrupt jarfile 원인)까지 rm -rf 로 정리. Co-Authored-By: Claude Opus 4.8 (1M context) --- .gitea/workflows/deploy-prod.yaml | 4 +++- .gitea/workflows/deploy.yaml | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/deploy-prod.yaml b/.gitea/workflows/deploy-prod.yaml index c1894d3..ac42a43 100644 --- a/.gitea/workflows/deploy-prod.yaml +++ b/.gitea/workflows/deploy-prod.yaml @@ -58,7 +58,9 @@ jobs: $SSH "$DEPLOY_USER@$DEPLOY_HOST" "mkdir -p \"\$(dirname '$DEPLOY_JAR_PATH')\" && cat > '$DEPLOY_JAR_PATH.new'" < "$JAR" $SSH "$DEPLOY_USER@$DEPLOY_HOST" "\ + docker compose -f '$COMPOSE_FILE' stop api 2>/dev/null || true; \ + rm -rf '$DEPLOY_JAR_PATH'; \ mv -f '$DEPLOY_JAR_PATH.new' '$DEPLOY_JAR_PATH'; \ docker compose -f '$COMPOSE_FILE' up -d --force-recreate api; \ - docker compose -f '$COMPOSE_FILE' ps api" + sleep 2; docker compose -f '$COMPOSE_FILE' ps api" echo "✅ 운영(api) 재기동 완료" \ No newline at end of file diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index f59d63b..d22a27c 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -63,8 +63,11 @@ jobs: # jar 전송: scp(SFTP) 경로 이슈 회피 위해 ssh stdin(cat) 사용. 임시파일 후 mv(원자적 교체). $SSH "$DEPLOY_USER@$DEPLOY_HOST" "mkdir -p \"\$(dirname '$DEPLOY_JAR_PATH')\" && cat > '$DEPLOY_JAR_PATH.new'" < "$JAR" + # 컨테이너 정지(마운트 해제) → 경로 정리(빈 디렉토리로 잘못 생성된 경우 포함) → jar 배치 → 재기동 $SSH "$DEPLOY_USER@$DEPLOY_HOST" "\ + docker compose -f '$COMPOSE_FILE' stop dev-api 2>/dev/null || true; \ + rm -rf '$DEPLOY_JAR_PATH'; \ mv -f '$DEPLOY_JAR_PATH.new' '$DEPLOY_JAR_PATH'; \ docker compose -f '$COMPOSE_FILE' up -d --force-recreate dev-api; \ - docker compose -f '$COMPOSE_FILE' ps dev-api" + sleep 2; docker compose -f '$COMPOSE_FILE' ps dev-api" echo "✅ dev-api 재기동 완료" \ No newline at end of file