Skip to content

Update Deploy.yml

Update Deploy.yml #41

Workflow file for this run

name: Deploy Spring Project
on:
push:
branches:
- deploy # 배포를 원하는 브랜치 이름
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Check out the repository
uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v2
with:
java-version: '21' # JDK 버전
distribution: 'temurin' # 또는 'zulu'와 같은 다른 배포도 가능
- name: Build with Gradle
run: |
cd boomerang # boomerang 디렉터리로 이동
./gradlew build -x test # Gradle 빌드
- name: Copy files to server
run: |
ssh -i "kwy-root.pem" ubuntu@ec2-52-79-80-3.ap-northeast-2.compute.amazonaws.com << EOF
# 서버에서 실행할 명령어
cd ~/Team11_BE # 프로젝트 디렉터리로 이동
git pull origin deploy # 배포 브랜치에서 업데이트
ps -ef | grep java | awk '{print $2}' | xargs kill -9 # 이전 Java 프로세스 종료
# 애플리케이션 프로퍼티 환경 변수 설정
export SPRING_APPLICATION_PROPERTIES=${{ secrets.APPLICATION }} # GitHub Secrets에서 가져오기
nohup java -jar -Dspring.config.location=${SPRING_APPLICATION_PROPERTIES} build/libs/boomerang-0.0.1-SNAPSHOT.jar > log.txt 2>&1 & # 애플리케이션 실행
EOF
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} # SSH 비공개 키를 GitHub Secrets에 저장해두세요.
- name: Check log file
run: |
ssh -i "kwy-root.pem" ubuntu@ec2-52-79-80-3.ap-northeast-2.compute.amazonaws.com "tail -f ~/Team11_BE/log.txt" # 로그 파일 확인