Skip to content

Merge pull request #75 from modu-menu/develop #19

Merge pull request #75 from modu-menu/develop

Merge pull request #75 from modu-menu/develop #19

Workflow file for this run

name: 모두의 회식 CD(ver.prod)
# 동적 변수 설정
env:
DOCKER_HUB_REPOSITORY: eelseungmin/modu-menu-deploy
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
on:
workflow_dispatch:
push:
branches:
- main
jobs:
docker-build-and-push:
runs-on: ubuntu-22.04
steps:
- name: repository에서 코드를 가져온다.
uses: actions/checkout@v4
- name: OpenJDK 17을 세팅한다.
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Gradle 명령 실행을 위한 권한을 부여한다.
run: chmod +x ./gradlew
- name: 실행 가능한 jar 파일을 빌드한다.
run: ./gradlew bootJar
- name: Docker Hub에 로그인한다.
uses: docker/login-action@v3
with:
username: ${{ env.DOCKER_HUB_USERNAME }}
password: ${{ env.DOCKER_HUB_PASSWORD }}
- name: Docker Image 빌드 후 Docker Hub에 push한다.
uses: docker/build-push-action@v5
with:
context: .
file: ./DockerFile-prod
push: true
platforms: linux/amd64
tags: ${{ env.DOCKER_HUB_REPOSITORY }}:latest
docker-pull-and-run:
runs-on: [self-hosted, modu]
if: ${{ needs.docker-build-and-push.result == 'success' }}
needs: [ docker-build-and-push ]
steps:
- name: 배포 스크립트를 실행한다.
run: sh /home/ubuntu/deploy.sh