Skip to content

[refactor/#104] Spring Security 스웨거 인가 허용 #58

[refactor/#104] Spring Security 스웨거 인가 허용

[refactor/#104] Spring Security 스웨거 인가 허용 #58

Workflow file for this run

name: Hello-World Dev CI/CD
on:
pull_request:
types: [ closed ]
workflow_dispatch: # (2).수동 실행도 가능하도록
jobs:
build:
runs-on: ubuntu-latest # (3).OS환경
if: github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'develop'
steps:
- name: Checkout
uses: actions/checkout@v2 # (4).코드 check out
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: 17 # (5).자바 설치
distribution: 'adopt'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Grant execute permission for gradlew
run: chmod +x ./gradlew
shell: bash # (6).권한 부여
- name: Build with Gradle
run: ./gradlew clean build -x test
shell: bash # (7).build시작
- name: Set Version
id: set_current_date
run: echo "version=$(date '+%Y-%m-%d-%H-%M-%S')" >> $GITHUB_OUTPUT
- name: Docker Image Build
run: |
docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc:${{ steps.set_current_date.outputs.version }} .
docker tag ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc:${{ steps.set_current_date.outputs.version }} ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc:latest
- name: Docker Login
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Docker Hub Push
run: |
docker push ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc:${{ steps.set_current_date.outputs.version }}
docker push ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc:latest
#ssh 접속 후 docker-compose
- name: Deploy in EC2
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ubuntu
key: ${{ secrets.SSH_KEY }}
script: |
cd app
sudo docker rm -f $(docker ps -qa)
sudo docker pull ${{ secrets.DOCKERHUB_USERNAME }}/helloworld-mvc
docker-compose up -d
sudo docker logs -f helloworld-mvc &> helloworld-mvc.log &
docker image prune -f