Skip to content

feat: 독서 기록 V2 API 및 대분류/세부 감정 시스템 구현 #215

feat: 독서 기록 V2 API 및 대분류/세부 감정 시스템 구현

feat: 독서 기록 V2 API 및 대분류/세부 감정 시스템 구현 #215

Workflow file for this run

name: CI - Pull Request
on:
pull_request:
branches:
- develop
- main
types:
- opened
- synchronize
- reopened
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
build-validation:
runs-on: ubuntu-24.04
timeout-minutes: 15
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0 # SonarCloud를 위한 전체 히스토리 가져오기
- name: Create secret properties files from GitHub Secrets
run: |
mkdir ./secret
echo "${{ secrets.DEV_SECRET_PROPERTIES }}" > ./secret/application-dev-secret.properties
echo "${{ secrets.PROD_SECRET_PROPERTIES }}" > ./secret/application-prod-secret.properties
echo "${{ secrets.APPLE_AUTH_KEY }}" > ./secret/AuthKey.p8
chmod 600 ./secret/*
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- name: Cache Gradle packages
uses: gradle/actions/setup-gradle@v4
with:
gradle-home-cache-cleanup: true
- name: Cache SonarCloud packages
uses: actions/cache@v4
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run full check and SonarCloud analysis
env:
GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: |
# fullCheck: 모든 모듈 (apis, admin, batch, gateway 등)의 빌드, 테스트, 정적분석 수행
# --parallel: 모듈별 병렬 빌드로 시간 단축
# --build-cache: Gradle 빌드 캐시 사용
./gradlew fullCheck --parallel --build-cache --info --stacktrace