Skip to content

Feat/8 chapter7

Feat/8 chapter7 #8

Workflow file for this run

name: Spring Boot CI Pipeline
# 워크플로우 실행 조건
on:
push:
branches: [ "main" ] # main 브랜치에 push될 때
pull_request:
branches: [ "develop" ] # develop 브랜치로 PR이 생성/업데이트될 때
jobs:
build-and-test: # 빌드와 테스트를 위한 단일 작업
runs-on: ubuntu-latest
steps:
# 1. 저장소 코드 체크아웃 (최신 버전 v4 사용)
- name: Checkout repository
uses: actions/checkout@v4
# 2. JDK 17 설정 및 Gradle 캐싱 (최신 버전 v4 사용)
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle' # Gradle 의존성을 캐싱하여 다음 빌드부터 속도를 향상시킵니다.
# 3. GitHub Secret을 사용하여 application.yml 파일 생성
# 디렉토리가 없는 경우에도 안전하게 생성하도록 'mkdir -p'를 사용합니다.
- name: Make application.yml
run: |
mkdir -p ./src/main/resources
echo "${{ secrets.APPLICATION_YML }}" > ./src/main/resources/application.yml
shell: bash
# 4. gradlew 실행 권한 부여
- name: Grant execute permission for gradlew
run: chmod +x ./gradlew
# 5. Gradle로 빌드 및 테스트 실행 (최신 버전 v3 사용)
# Gradle의 'build' 명령어는 컴파일, 테스트 실행, jar 파일 패키징을 모두 수행합니다.
- name: Build with Gradle
uses: gradle/gradle-build-action@v3
with:
arguments: build