Merge pull request #13 from WhosInRoom/feat/#11-club-api #17
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: CD | |
| on: | |
| push: | |
| branches: [ "develop" ] | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'corretto' | |
| java-version: '17' | |
| - name: build | |
| run: | | |
| chmod +x gradlew | |
| ./gradlew build -x test | |
| - name: Create .env file from secrets | |
| run: | | |
| echo "LOCAL_DATASOURCE_URL=${{ secrets.LOCAL_DATASOURCE_URL }}" > .env | |
| echo "LOCAL_DATASOURCE_USERNAME=${{ secrets.LOCAL_DATASOURCE_USERNAME }}" >> .env | |
| echo "LOCAL_DATASOURCE_PASSWORD=${{ secrets.LOCAL_DATASOURCE_PASSWORD }}" >> .env | |
| echo "JWT_SECRET_KEY=${{ secrets.JWT_SECRET_KEY }}" >> .env | |
| echo "JWT_ACCESS_EXPIRED_IN=${{ secrets.JWT_ACCESS_EXPIRED_IN }}" >> .env | |
| echo "JWT_REFRESH_EXPIRED_IN=${{ secrets.JWT_REFRESH_EXPIRED_IN }}" >> .env | |
| echo "MAIL_ADDRESS=${{ secrets.MAIL_ADDRESS }}" >> .env | |
| echo "MAIL_PASSWORD=${{ secrets.MAIL_PASSWORD }}" >> .env | |
| - name: Copy jar to EC2 | |
| uses: appleboy/scp-action@v0.1.7 | |
| with: | |
| host: ${{ secrets.EC2_HOST }} | |
| username: ${{ secrets.EC2_USER }} | |
| key: ${{ secrets.EC2_SSH_KEY }} | |
| source: "build/libs/*SNAPSHOT.jar" | |
| target: "/home/ubuntu/app/" | |
| rm: true | |
| - name: Copy .env file to EC2 | |
| uses: appleboy/scp-action@v0.1.7 | |
| with: | |
| host: ${{ secrets.EC2_HOST }} | |
| username: ${{ secrets.EC2_USER }} | |
| key: ${{ secrets.EC2_SSH_KEY }} | |
| source: ".env" | |
| target: "/home/ubuntu/app/" | |
| - name: Restart app on EC2 | |
| uses: appleboy/ssh-action@v0.1.10 | |
| with: | |
| host: ${{ secrets.EC2_HOST }} | |
| username: ${{ secrets.EC2_USER }} | |
| key: ${{ secrets.EC2_SSH_KEY }} | |
| script: | | |
| JAR_PATH=$(find /home/ubuntu/app/ -type f -name '*SNAPSHOT.jar' -print0 | xargs -0 ls -t | head -1) | |
| sudo mv "${JAR_PATH}" /home/ubuntu/app/application.jar | |
| sudo systemctl daemon-reload | |
| sudo systemctl restart whois-server |