name: CI
on:
push: //아래의 job들을 실행할 상황을 정한다. 개인프로젝트라 푸시할 때만 하도록했다.
branches: main
permissions:
contents: read
jobs: //위에서 정한 상황에 실행할 작업들을 설정한다.
build:
runs-on: ubuntu-latest //ubuntu 최신버전에서 작업을 하며
steps: //다음과 같은 단계를 거친다.
- uses: actions/checkout@v3 //소스코드로 체크아웃
- name: Set up JDK 17 //서버에 자바 버전 설치
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt' //배포자 이거 좀 모르겠다. 나의 SDK가 아닌 배포자를 기재해도 작동한다. 왜?
- name: Add permission //Gradle권한 변경
run: chmod +x gradlew
- name: Build with Gradle // 빌드함
uses: gradle/gradle-build-action@bd5760595778326ba7f1441bcf7e88b49de61a25 # v2.6.0
with:
arguments: build
- name: Build Cache //Build Cache 라는 이름으로 행하는 클린 후 빌드 현재 가장 큰 궁금증
run: ./gradlew clean build --stacktrace
CI 혹은 CD의 전체적인 맥락은 알겠다. 그리고 가장 중요한 것은 .yml 에 작성한 job 이라고 생각하고 최대한 공부중인데 모르는 것들이 많다. 가장 대표적으로 캐싱처리하는 것인줄 알았던 'Build Cache 라는 이름으로 클린하고 빌드하는 작업'은 왜 실제 CI 속도가 증가하는지 모르겠다.
[TIL#30] Study] RDBMS vs NoSQL (0) | 2024.01.08 |
---|