diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index f5cc1b90..b4c4e5e1 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -1,4 +1,4 @@ -name: Continuous Deployment +name: Backend Continuous Deployment on: push: @@ -9,27 +9,25 @@ jobs: runs-on: ubuntu-24.04 steps: - # 1. Compare branch 코드 내려 받기 - - name: Checkout PR + # 1. 브랜치 checkout + - name: Checkout code uses: actions/checkout@v3 - with: - ref: ${{ github.event.pull_request.head.ref }} - # 2. 자바 환경 설정 + # 2. JDK 설정 - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: '17' - distribution: 'temurin' + java-version: "17" + distribution: "temurin" - # 3. Docker 이미지 build 및 push + # 3. Docker 이미지 build 및 push - name: docker build and push run: | docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} docker build -t ${{ secrets.DOCKER_USERNAME }}/gotcha:latest . docker push ${{ secrets.DOCKER_USERNAME }}/gotcha:latest - # 4. ec2 pull + # 4. backend 서비스 재시작 - name: Deploy to server uses: appleboy/ssh-action@master with: @@ -39,9 +37,17 @@ jobs: key: ${{ secrets.SERVER_KEY }} script: | docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} - docker system prune -a -f - docker-compose down - docker rmi ${{ secrets.DOCKER_USERNAME }}/gotcha:latest + + echo "==== BACKEND 컨테이너 중지 ====" + docker-compose stop app || true + + echo "==== 오래된 BACKEND 이미지 삭제 ====" + docker rmi ${{ secrets.DOCKER_USERNAME }}/gotcha:latest || true + + echo "==== 최신 BACKEND 이미지 pull ====" docker pull ${{ secrets.DOCKER_USERNAME }}/gotcha:latest - docker-compose up -d + echo "==== BACKEND만 재시작 ====" + docker-compose up -d app + + echo "==== 백엔드 배포 완료! ====" diff --git a/gotcha-common/src/main/java/gotcha_common/util/CookieUtil.java b/gotcha-common/src/main/java/gotcha_common/util/CookieUtil.java index 5b130b38..be5d569c 100644 --- a/gotcha-common/src/main/java/gotcha_common/util/CookieUtil.java +++ b/gotcha-common/src/main/java/gotcha_common/util/CookieUtil.java @@ -20,7 +20,7 @@ public ResponseCookie createCookie(String key, String value, boolean autoSignIn) .path("/") .httpOnly(true) .secure(secure) - .sameSite(secure ? "None" : "Lax"); + .sameSite(secure ? "Strict" : "Lax"); if(autoSignIn) cookie.maxAge(COOKIE_REFRESH_EXPIRATION); @@ -35,7 +35,7 @@ public void deleteCookie(String cookieName, HttpServletResponse response) { .httpOnly(true) .maxAge(0) .secure(secure) - .sameSite(secure ? "None" : "Lax") + .sameSite(secure ? "Strict" : "Lax") .build(); response.addHeader("Set-Cookie", cookie.toString());