Skip to content

Feature: 대기열 구조 이벤트 기반 처리 구현 (#34) #67

Feature: 대기열 구조 이벤트 기반 처리 구현 (#34)

Feature: 대기열 구조 이벤트 기반 처리 구현 (#34) #67

Workflow file for this run

name: Continuous Deployment
on:
push:
branches: ["main"]
jobs:
deploy:
runs-on: ubuntu-22.04
steps:
# 1. Compare branch 코드 내려 받기
- name: Checkout PR
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
# 2. 자바 환경 설정
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
# Firebase를 위한 JSON 파일 생성
- name: Create Json
uses: jsdaniell/create-json@v1.2.2
with:
name: "./src/main/resources/table-for-you-71dec-firebase-adminsdk-ixi74-7adbb3e3cb.json"
json: ${{ secrets.FIREBASE_PRODUCTION_JSON }}
# 3. Docker 이미지 build 및 push
- name: docker build and push
run: |
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
docker build -t ${{ secrets.DOCKER_USERNAME }}/table-for-you:latest .
docker push ${{ secrets.DOCKER_USERNAME }}/table-for-you:latest
# 4. ec2 pull
- name: Deploy to server
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SERVER_HOST }}
port: ${{ secrets.SERVER_SSH_PORT }}
username: ${{ secrets.SERVER_USERNAME }}
key: ${{ secrets.SERVER_KEY }}
script: |
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
docker system prune -a -f
docker-compose down
docker rmi ${{ secrets.DOCKER_USERNAME }}/table-for-you:latest
docker pull ${{ secrets.DOCKER_USERNAME }}/table-for-you:latest
docker-compose up -d