diff --git a/.github/workflows/backend-ci-cd.yml b/.github/workflows/backend-ci-cd.yml index 76c5c60..fbb4ded 100644 --- a/.github/workflows/backend-ci-cd.yml +++ b/.github/workflows/backend-ci-cd.yml @@ -9,14 +9,18 @@ on: - 'HalfFifty_BE/**' jobs: + # 1. 테스트 및 빌드 test: name: Test and Build Backend runs-on: ubuntu-latest steps: + + # 1.1 코드 체크아웃 - name: Checkout code uses: actions/checkout@v3 + # 1.2 JDK 17 설치 - name: Set up JDK 17 uses: actions/setup-java@v3 with: @@ -40,39 +44,40 @@ jobs: deploy: name: Deploy Backend - needs: test - if: github.ref == 'refs/heads/main' + needs: test # 빌드/테스트가 성공해야 실행 + if: github.ref == 'refs/heads/main' # main 브랜치에서만 실행 runs-on: ubuntu-latest steps: + # 2.1 코드 체크아웃 - name: Checkout code uses: actions/checkout@v3 + # 2.2 JDK 17 설치 - name: Set up JDK 17 uses: actions/setup-java@v3 with: java-version: '17' distribution: 'temurin' - - name: Build Docker Image - working-directory: HalfFifty_BE - run: docker build -t half-fifty:latest . - - - name: Deploy to EC2 - uses: appleboy/ssh-action@v0.1.2 + # 2.3 빌드된 JAR 파일을 EC2로 전송 + - name: Upload JAR to EC2 + uses: appleboy/scp-action@v0.1.2 with: host: ${{ secrets.AWS_IP }} username: ${{ secrets.AWS_USER }} key: ${{ secrets.AWS_KEY }} - script: | - docker stop half-fifty || true - docker rm half-fifty || true - docker run -d -p 80:8080 --name half-fifty half-fifty:latest + source: ./HalfFifty_BE/build/libs/HalfFifty_BE-0.0.1-SNAPSHOT.jar + target: ~/HalfFifty_BE-0.0.1-SNAPSHOT.jar - - name: Verify Container Status + # 2.4 EC2에서 Docker Compose로 배포 실행 + - name: Deploy to EC2 using Docker Compose uses: appleboy/ssh-action@v0.1.2 with: host: ${{ secrets.AWS_IP }} username: ${{ secrets.AWS_USER }} key: ${{ secrets.AWS_KEY }} - script: docker ps | grep half-fifty + script: | + cd ~ + docker-compose down || true + docker-compose up -d --build diff --git a/HalfFifty_BE/src/main/java/HalfFifty/HalfFifty_BE/HealthCheck.java b/HalfFifty_BE/src/main/java/HalfFifty/HalfFifty_BE/HealthCheck.java index 69fdd02..1567c13 100644 --- a/HalfFifty_BE/src/main/java/HalfFifty/HalfFifty_BE/HealthCheck.java +++ b/HalfFifty_BE/src/main/java/HalfFifty/HalfFifty_BE/HealthCheck.java @@ -8,6 +8,6 @@ public class HealthCheck { @GetMapping("/") public String health() { - return "server on!"; + return "server on!!!"; } }