main 작업 내용 dev로 동기화 #51
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
name: Code Test Pipeline | |
on: | |
pull_request: | |
branches: ["dev", "main"] | |
permissions: | |
contents: read | |
checks: write | |
env: | |
DB_URL: ${{ secrets.DB_URL }} | |
DB_USERNAME: ${{ secrets.DB_USERNAME }} | |
DB_PASSWORD: ${{ secrets.DB_PASSWORD }} | |
SPRING_ACTIVE_PROFILE: ${{ vars.SPRING_ACTIVE_PROFILE }} | |
JWT_SECRET: ${{ secrets.JWT_SECRET }} | |
FCM_PROJECT_ID: ${{ secrets.FCM_PROJECT_ID }} | |
AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
jobs: | |
formatting: | |
runs-on: ubuntu-latest | |
permissions: write-all | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.ref }} | |
- name: Formatting Code with Google Java Style Guide | |
uses: axel-op/googlejavaformat-action@v3 | |
with: | |
args: "--replace --aosp" | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
unit-test: | |
runs-on: ubuntu-latest | |
permissions: write-all | |
needs: [formatting] | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Gradle Caching | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} | |
restore-keys: | | |
${{ runner.os }}-gradle- | |
- name: Set up JDK 21 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '21' | |
distribution: 'temurin' | |
cache: 'gradle' | |
- name: Create firebase_admin_sdk_private_key.json from Secrets | |
run: | | |
mkdir -p $GITHUB_WORKSPACE/src/main/resources/key | |
echo "${{ secrets.FIREBASE_ADMIN_SDK_PRIVATE_KEY }}" | base64 --decode > $GITHUB_WORKSPACE/src/main/resources/key/firebase_admin_sdk_private_key.json | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Test with Gradle | |
run: ./gradlew --info test | |
- name: Publish Test Report | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
if: always() | |
with: | |
files: "**/build/test-results/test/TEST-*.xml" |