Skip to content

Merge branch 'hotfix/add-test-ci-property(#21)' of https://github.com… #31

Merge branch 'hotfix/add-test-ci-property(#21)' of https://github.com…

Merge branch 'hotfix/add-test-ci-property(#21)' of https://github.com… #31

Workflow file for this run

name: action-test
# 하기 내용에 해당하는 이벤트 발생 시 github action 동작
on:
push:
branches:
- main
- develop
- release*
pull_request:
branches:
- main
- develop
- release*
# 참고사항
# push가 일어난 브랜치에 PR이 존재하면, push에 대한 이벤트와 PR에 대한 이벤트 모두 발생합니다.
# 단위 테스트 결과를 발행하기 위해 쓰기 권한을 주어야 합니다.
permissions: write-all
jobs:
test: # 테스트를 수행합니다.
runs-on: ubuntu-latest # 실행 환경 지정
steps:
- name: Checkout Repostiory
uses: actions/checkout@v3 # github action 버전 지정(major version)
- name: Set up JDK 17 # JAVA 버전 지정
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto' # OpenJDK 배포사 corretto, temurin
- name: Copy secrets to application
env:
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
OCCUPY_SECRET_TEST_DIR: ./src/test/resources # 레포지토리 내 빈 env.yml의 위치 (test)
OCCUPY_SECRET_DIR: ./src/main/resources # 레포지토리 내 빈 env.yml의 위치 (main)
OCCUPY_SECRET_DIR_FILE_NAME: env.yml # 파일 이름
# base64 디코딩하여 파일에 secrets 값 복사
run: echo $OCCUPY_SECRET | base64 --decode > $OCCUPY_SECRET_DIR/$OCCUPY_SECRET_DIR_FILE_NAME &&
echo $OCCUPY_SECRET | base64 --decode > $OCCUPY_SECRET_TEST_DIR/$OCCUPY_SECRET_DIR_FILE_NAME
# github action 에서 Gradle dependency 캐시 사용
- name: Cache Gradle packages
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: Grant execute permission for gradlew # 실행할 수 있게 권한주기
run: chmod +x gradlew
- name: Test with Gradle
run: ./gradlew test
# 테스트 후 Result를 보기위해 Publish Unit Test Results step 추가
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: ${{ always() }} # 테스트가 실패하여도 Report를 보기 위해 `always`로 설정
with:
files: build/test-results/test/TEST-*.xml
# 테스트 실패시 어디서 틀렸는지 알려줍니다.
- name: Add comments to a pull request
uses: mikepenz/action-junit-report@v3
if: ${{ always() }}
with:
report_paths: build/test-results/test/TEST-*.xml