Skip to content

Update RouteController.java #53

Update RouteController.java

Update RouteController.java #53

Workflow file for this run

name: Java CI/CD with Gradle - RideOn
# develop 브랜치에 push가 발생할 경우 동작
on:
push:
branches: [ "develop" ]
workflow_dispatch:
permissions:
contents: read
jobs:
# Spring Boot 애플리케이션을 빌드하여 도커허브에 푸시하는 과정
build-docker-image:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
# JDK 17 세팅
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
# Spring Boot 빌드
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: clean bootJar
# application.yml 템플릿 생성
- name: Create application.yml from template
run: |
cp src/main/resources/application.yml.template src/main/resources/application.yml
envsubst < src/main/resources/application.yml.template > src/main/resources/application.yml
env:
# PostgreSQL
DB_URL: ${{ secrets.DB_URL }}
DB_USERNAME: ${{ secrets.DB_USERNAME }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
# Swagger
SPRINGDOC_API_DOCS_PATH: ${{ secrets.SPRINGDOC_API_DOCS_PATH }}
SPRINGDOC_SWAGGER_UI_PATH: ${{ secrets.SPRINGDOC_SWAGGER_UI_PATH }}
SPRINGDOC_PACKAGES_TO_SCAN: ${{ secrets.SPRINGDOC_PACKAGES_TO_SCAN }}
# Naver
NAVER_CLIENT_ID: ${{ secrets.NAVER_CLIENT_ID }}
NAVER_CLIENT_SECRET: ${{ secrets.NAVER_CLIENT_SECRET }}
NAVER_REDIRECT_URI: ${{ secrets.NAVER_REDIRECT_URI }}
# Kakao
KAKAO_CLIENT_ID: ${{ secrets.KAKAO_CLIENT_ID }}
KAKAO_CLIENT_SECRET: ${{ secrets.KAKAO_CLIENT_SECRET }}
KAKAO_REDIRECT_URI: ${{ secrets.KAKAO_REDIRECT_URI }}
# Weather API
WEATHER_API_KEY: ${{ secrets.WEATHER_API_KEY }}
# Vworld API
VWORLD_API_KEY: ${{ secrets.VWORLD_API_KEY }}
#JWT_SECRET
JWT_SECRET: ${{ secrets.JWT_SECRET }}
# Docker 이미지 빌드
- name: Docker image build
run: docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/github-actions-rideon .
# DockerHub 로그인
- name: Docker login
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
# DockerHub 푸시
- name: Docker Hub push
run: docker push ${{ secrets.DOCKERHUB_USERNAME }}/github-actions-rideon
run-docker-image-on-ec2:
needs: build-docker-image
runs-on: self-hosted
steps:
# 최신 이미지 pull
- name: Docker pull
run: sudo docker pull ${{ secrets.DOCKERHUB_USERNAME }}/github-actions-rideon
# 기존 컨테이너 정리
- name: Docker stop & remove
run: |
sudo docker stop spring 2>/dev/null || true
sudo docker rm spring 2>/dev/null || true
# 최신 컨테이너 실행
- name: Run new container
run: |
sudo docker run -d --name spring \
--network app-net \
--restart unless-stopped \
-p ${{ secrets.SERVER_PORT }}:${{ secrets.SERVER_PORT }} \
-e SERVER_PORT=${{ secrets.SERVER_PORT }} \
-e DB_URL=${{ secrets.DB_URL }} \
-e DB_USERNAME=${{ secrets.DB_USERNAME }} \
-e DB_PASSWORD=${{ secrets.DB_PASSWORD }} \
${{ secrets.DOCKERHUB_USERNAME }}/github-actions-rideon