Skip to content

Merge pull request #116 from CLAT-Project/hotfix-findMemberPwd #39

Merge pull request #116 from CLAT-Project/hotfix-findMemberPwd

Merge pull request #116 from CLAT-Project/hotfix-findMemberPwd #39

Workflow file for this run

name: Java CI with Gradle
on:
push:
branches: [ "develop" ] # develop λΈŒλžœμΉ˜μ— ν‘Έμ‹œλ  λ•Œ 배포
pull_request:
branches: [ "develop" ] # develop λΈŒλžœμΉ˜μ— λŒ€ν•œ PR에 λŒ€ν•΄μ„œλ„ μ‹€ν–‰
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
with:
submodules: true # μ„œλΈŒλͺ¨λ“ˆ μ΄ˆκΈ°ν™”λŠ” 이곳에 μœ„μΉ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.
token: ${{ secrets.GIT_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@af1da67850ed9a4cedd57bfd976089dd991e2582 # v4.0.0
- name: Build with Gradle Wrapper
run: ./gradlew build
deploy:
if: github.ref == 'refs/heads/develop' # develop λΈŒλžœμΉ˜μ— ν‘Έμ‹œλ  λ•Œ 배포
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
with:
submodules: true # μ„œλΈŒλͺ¨λ“ˆ μ΄ˆκΈ°ν™”
token: ${{ secrets.GIT_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Set up SSH key
run: |
mkdir -p ~/.ssh
echo "${{ secrets.EC2_SSH_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
- name: Deploy to EC2 using SSH
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.EC2_HOST }}
username: ubuntu
key: ${{ secrets.EC2_SSH_KEY }}
port: 22
script: |
# μ„œλΈŒλͺ¨λ“ˆ μ—…λ°μ΄νŠΈ (SSH λ°©μ‹μœΌλ‘œ)
git submodule update --init --recursive --depth 1
# PM2 ν”„λ‘œμ„ΈμŠ€ μ’…λ£Œ
pkill -f 'java -jar clat-0.0.1-SNAPSHOT.jar' || true
# ν”„λ‘œμ νŠΈ λ””λ ‰ν† λ¦¬λ‘œ 이동
cd /home/ubuntu/CLAT-SERVER
# μ΅œμ‹  μ½”λ“œλ‘œ Git Pull (μ„œλΈŒλͺ¨λ“ˆ 포함)
git pull origin develop --recurse-submodules
# μ˜μ‘΄μ„± μ„€μΉ˜ (npm ci와 mecab μ„€μΉ˜)
npm install # package-lock.json이 μ—†λ‹€λ©΄ μ„€μΉ˜ν•˜κ³ , ci둜 μ„€μΉ˜ν•©λ‹ˆλ‹€.
npm ci && node_modules/mecab-ya/bin/install-mecab ko
# Java μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‹œμž‘ (μƒˆλ‘œ μ‹œμž‘)
pm2 start build/libs/clat-0.0.1-SNAPSHOT.jar --name clat-0.0.1-SNAPSHOT || true
# ν”„λ‘œμ„ΈμŠ€ μƒνƒœ μ €μž₯ (PM2μ—μ„œ μƒˆλ‘œμš΄ ν”„λ‘œμ„ΈμŠ€ μƒνƒœ μ €μž₯)
pm2 save