공부기록

[실습] CICD - 2

jhs0129 2023. 8. 29. 12:00
320x100
반응형
320x100
반응형

CI workFlow 작성

시나리오

main branch에서 개발용 dev branch를 만들고 각 기능을 개발 할 feat branch 생성

개발 완료 후 feat -> dev로 pull request를 통해 코드 리뷰와 merge 과정 진행

name: Gradle Test

on:
  pull_request:
    branches: [ "dev" ]

permissions:
  contents: read

# 실행 시킬 내용들의 집합체
jobs:
  build:

    # runner : ubuntu 지정
    runs-on: ubuntu-latest

    # 순차 실행
    steps:
      - uses: actions/checkout@v3
      - name: Set up JDK 17
        uses: actions/setup-java@v3
        with:
          java-version: '17'
          distribution: 'temurin'

      - name: Grant execute permission for gradlew
        run: chmod +x ./gradlew
        shell: bash

      - name: Test with Gradle
        uses: gradle/gradle-build-action@v2
        with:
          arguments: test

추가

WorkFlow Syntax를 보면 job 내부에서 if문을 통해 조건 분기가 가능하다

Trouble Shooting

  1. Gradle script '/home/runner/work/CICD-Test/CICD-Test/gradlew' is not executable.
    • gradlew에 대한 권한이 없어서 생기는 문제 권한 추가 과정이 필요 함
        - name: Grant execute permission for gradlew
          run: chmod +x ./gradlew
          shell: bash
  2. SpringCicdApplicationTests > contextLoads() FAILED
    • Spring Data JPA에 대한 의존성을 받아두고 DB관련 의존성은 받아두지 않아서 datasource 생성 실패
    • CI과정 중에 생긴 문제라기 보다는 Spring 관련 문제이지만 추가해 둠
320x100
반응형