chore: deploy.yml 수정 #7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy to EC2 | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| # 1. 코드 체크아웃 | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| # 2. JDK 17 세팅 | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| # 3. Gradle 실행 권한 부여 | |
| - name: Grant execute permission for gradlew | |
| run: chmod +x ./gradlew | |
| # 4. Gradle 빌드 | |
| - name: Build with Gradle | |
| run: ./gradlew clean bootJar -x test | |
| # 5. jar 파일 이름 고정 | |
| - name: Rename jar | |
| run: mv build/libs/*.jar build/libs/app.jar | |
| # 6. EC2로 jar 전송 | |
| - name: Upload jar to EC2 | |
| uses: appleboy/scp-action@v0.1.7 | |
| with: | |
| host: ${{ secrets.EC2_HOST }} | |
| username: ${{ secrets.EC2_USER }} | |
| key: ${{ secrets.EC2_KEY }} | |
| source: "build/libs/app.jar" | |
| target: "/home/ubuntu/app" | |
| strip_components: 2 | |
| # 7. EC2에서 앱 재시작 | |
| - name: Restart app on EC2 | |
| uses: appleboy/ssh-action@v1.0.3 | |
| with: | |
| host: ${{ secrets.EC2_HOST }} | |
| username: ${{ secrets.EC2_USER }} | |
| key: ${{ secrets.EC2_KEY }} | |
| envs: KEY_HACKERTON | |
| script: | | |
| cd /home/ubuntu/app | |
| chmod +x run.sh | |
| export KEY_hackerton="$KEY_HACKERTON" | |
| ./run.sh | |
| env: | |
| KEY_HACKERTON: ${{ secrets.KEY_HACKERTON }} |