Update deploy.yml : 배포 테스트 스킵 #5
This file contains 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 GCP | |
on: | |
push: | |
branches: | |
- Master | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up JDK 21 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '21' | |
distribution: 'adopt' | |
- name: Configure Production Properties | |
run: | | |
touch ./src/main/resources/application-prod.properties | |
echo "${{ secrets.APPLICATION_PROD_PROPERTIES }}" > ./src/main/resources/application-prod.properties | |
- name: Configure GCS Properties | |
run: | | |
touch ./src/main/resources/application-gcs.properties | |
echo "${{ secrets.APPLICATION_GCS_PROPERTIES }}" > ./src/main/resources/application-gcs.properties | |
- name: Configure Test Properties | |
run: | | |
touch ./src/main/resources/application-test.properties | |
echo "${{ secrets.APPLICATION_TEST_PROPERTIES }}" > ./src/main/resources/application-test.properties | |
- name: gradlew에 실행 권한 부여 | |
run: chmod +x ./gradlew | |
- name: Build with Gradle | |
run: ./gradlew build -x test | |
- name: Upload JAR file | |
uses: actions/upload-artifact@v3 | |
with: | |
name: team18-be-jar | |
path: build/libs/team18-be-0.0.1-SNAPSHOT.jar | |
deploy: | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Download JAR file | |
uses: actions/download-artifact@v3 | |
with: | |
name: team18-be-jar | |
- name: Deploy to GCP | |
run: | | |
# 필요한 패키지 설치 | |
sudo apt-get install -y google-cloud-sdk | |
# GCP 인증 | |
echo "${{ secrets.HIREHIGHER_GCP_SSH_KEY }}" > ${HOME}/gcp-key.json | |
gcloud auth activate-service-account --key-file=${HOME}/gcp-key.json | |
# GCP VM 인스턴스에 JAR 파일 전송 | |
gcloud compute scp ./build/libs/team18-be-0.0.1-SNAPSHOT.jar hirehigher-api:/home/hirehigher/repository --zone asia-northeast3-a | |
# GCP VM에서 배포 쉘 스크립트 실행 | |
gcloud compute ssh hirehigher-api --zone asia-northeast3-a --command 'bash /home/hirehigher/repository/deploy.sh' |