Merge pull request #184 from nhnacademy-be4-ckin/feat/sale #142
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven | |
# This workflow uses actions that are not certified by GitHub. | |
# They are provided by a third-party and are governed by | |
# separate terms of service, privacy policy, and support | |
# documentation. | |
name: Docker Image CI | |
on: | |
push: | |
branches: [ "develop" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
# jdk 11 세팅 | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '11' | |
distribution: 'temurin' | |
cache: maven | |
# 패키징 | |
- name: Build with Maven | |
run: mvn -B package --file pom.xml | |
# 도커 로그인 | |
- name: Log in to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
# 도커 이미지 빌드 | |
- name: Build the Docker image | |
run: docker build -t nhnckin/api . | |
# 이미지 띄우기 | |
- name: push Docker image | |
run: docker push nhnckin/api | |
# 쉘 스크립트 실행 | |
- name: app 1 - execute shell script | |
uses: appleboy/ssh-action@master | |
with: | |
host: ${{ secrets.SSH_IP }} # 인스턴스 플로팅 ip | |
username: ${{ secrets.SSH_ID }} # user Id | |
key: ${{ secrets.SSH_KEY }} # user 개인키 | |
port: ${{ secrets.SSH_PORT }} # ssh 포트 = 22 | |
script_stop: true | |
script: "./startup.sh" | |
# 쉘 스크립트 실행 | |
- name: app 2 - execute shell script | |
uses: appleboy/ssh-action@master | |
with: | |
host: ${{ secrets.SSH_IP2 }} # 인스턴스 플로팅 ip | |
username: ${{ secrets.SSH_ID2 }} # user Id | |
key: ${{ secrets.SSH_KEY }} # user 개인키 | |
port: ${{ secrets.SSH_PORT }} # ssh 포트 = 22 | |
script_stop: true | |
script: "./startup.sh" | |
# SonarQube 실행 | |
- name: Execute SonarQube | |
run: mvn sonar:sonar -Dsonar.projectKey=ckin-api -Dsonar.host.url=${{ secrets.SONARQUBE_URL }} -Dsonar.login=${{ secrets.SONARQUBE_LOGIN }} | |