Skip to content

fix: CI/CD 설정 파일 수정 (#63) #5

fix: CI/CD 설정 파일 수정 (#63)

fix: CI/CD 설정 파일 수정 (#63) #5

name: cd for transfer-service
on:
push:
branches: [ "main" ]
env:
PROJECT_ID: ${{ secrets.PROJECT_ID }}
DOCKER_REPO: ${{ secrets.DOCKER_REPO }}
REGION: ${{ secrets.REGION }}
WORKSTATION_IMAGE: transfer-service
VERSION: '1.0.0'
jobs:
build:
runs-on: ubuntu-22.04
defaults:
run:
working-directory: ./transfer-service
steps:
- name: Check out Repository
uses: actions/checkout@v3
- name: Set Application Yml
uses: microsoft/variable-substitution@v1
with:
files: ./transfer-service/src/main/resources/application-prod.yml
env:
spring.data.redis.host: ${{secrets.REDIS_HOST}}
spring.data.redis.port: ${{secrets.REDIS_PORT}}
spring.datasource.url: ${{secrets.DB_URL}}
spring.datasource.username: ${{secrets.DB_USERNAME}}
spring.datasource.password: ${{secrets.DB_PASSWORD}}
spec.template.spec.containers.image: ${{env.image}}
- name: Set up google auth
id: 'auth'
uses: google-github-actions/auth@v1
with:
credentials_json: ${{ secrets.GCE_SA_KEY }}
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@v1
with:
project_id: ${{ env.PROJECT_ID }}
- name: Set up Java version
uses: actions/setup-java@v1
with:
java-version: '17'
- name: Run tests
run: ../gradlew test
- name: Docker Build
if: success()
run: ../gradlew docker
- name: Docker tag
env:
image: ${{env.REGION}}-docker.pkg.dev/${{env.PROJECT_ID}}/${{env.DOCKER_REPO}}/${{env.WORKSTATION_IMAGE}}
run: docker tag click-me-${{env.WORKSTATION_IMAGE}}:${env.VERSION} ${{env.image}}
- name: Docker Push
run: docker push ${{env.image}}