Skip to content

test: 이미지 업로드 방식 테스트 #109

test: 이미지 업로드 방식 테스트

test: 이미지 업로드 방식 테스트 #109

Workflow file for this run

name: Build and Deploy to Development Server
on:
pull_request:
branches:
- develop
# push:
# branches:
# - develop
jobs:
dev-deploy-backend:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
token: ${{ secrets.PERSONAL_GITHUB_TOKEN }}
- name: Set VERSION for development
run: |
VERSION="dev-$(date +%Y%m%d%H%M%S)"
echo "VERSION=${VERSION}" >> $GITHUB_ENV
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
- name: Gradle 실행 권한 부여
run: chmod +x ./gradlew
- name: Gradle 빌드
run: ./gradlew build -x test --no-daemon
- name: Build and push to development Docker registry
run: |
echo "${{ secrets.PERSONAL_GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
docker build -t ghcr.io/sumbisori/sumbisori-backend-dev:${{ env.VERSION }} .
docker push ghcr.io/sumbisori/sumbisori-backend-dev:${{ env.VERSION }}
echo "IMAGE_NAME=ghcr.io/sumbisori/sumbisori-backend-dev:${{ env.VERSION }}" >> $GITHUB_ENV
- name: SSH into EC2 and deploy to development server
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.DEV_EC2_HOST }}
username: ${{ secrets.DEV_EC2_USER }}
key: ${{ secrets.DEV_EC2_KEY }}
script: |
echo "${{ secrets.PERSONAL_GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
docker pull ${{ env.IMAGE_NAME }}
docker rm -f dev-backend || true
docker run -d --log-driver=syslog --name dev-backend -p 8080:8080 \
--network my-network \
-e SPRING_PROFILES_ACTIVE=dev \
${{ env.IMAGE_NAME }}
docker image prune -a -f