Skip to content

refactor: 시니어 기본 국적 정보 반환 복구 #30

refactor: 시니어 기본 국적 정보 반환 복구

refactor: 시니어 기본 국적 정보 반환 복구 #30

Workflow file for this run

name: deploy
on:
push:
branches: [ "develop" ]
# pull_request:
# branches: [ "develop" ]
# types: [closed]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
# 기본 체크아웃
- name: Checkout
uses: actions/checkout@v3
# Gradlew 실행 허용
- name: Run chmod to make gradlew executable
run: chmod +x ./gradlew
# JDK 21 세팅
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
java-version: '21'
distribution: 'temurin'
# 환경 변수 설정
- name: Set environment values
run: |
mkdir -p src/main/resources/{gcp,ocr}
echo "${{ secrets.APPLICATION_PROPERTIES }}" > src/main/resources/application.yml
echo "${{ secrets.GCP_SERVICE_KEY }}" | base64 --decode > src/main/resources/gcp/service-key.json
echo "${{ secrets.OCR_SERVICE_KEY }}" | base64 --decode > src/main/resources/ocr/service-key.json
shell: bash
# Gradle build (Test 제외)
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: clean build -x test
# Docker build
- name: Docker build
run: |
echo "${{ secrets.DOCKERHUB_PASSWORD }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin
docker build -t weve_spring .
docker tag weve_spring ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPOSITORY }}:${GITHUB_SHA::7}
docker push ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPOSITORY }}:${GITHUB_SHA::7}
# Deploy
- name: Deploy
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
envs: GITHUB_SHA
script: |
sudo docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_PASSWORD }}
# 기존 컨테이너 중지 및 삭제
sudo docker stop weve_spring || true
sudo docker rm weve_spring || true
# 기존 이미지 삭제 (오래된 이미지 정리)
sudo docker rmi ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPOSITORY }}:${GITHUB_SHA::7} || true
# 새로운 이미지 가져오기
sudo docker pull ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPOSITORY }}:${GITHUB_SHA::7}
# 최신 이미지 태깅
sudo docker tag ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPOSITORY }}:${GITHUB_SHA::7} weve_spring
# 기존 컨테이너를 완전히 삭제한 후 다시 실행
sudo docker-compose down
sudo docker-compose up -d --force-recreate