CI/CD관련하여 Travis로 구현해보려고 한다.
Travis CI의 상세한 설정은 프로젝트에 존재하는 .travis.yml / YAML로 설정
YAML이란? 쉽게 말해서 jSON에서 괄호를 제거 했다고 생각하면 된다.
YAML 이념이 "기계에서 파싱하기 쉽게, 사람이 다루기 쉽게"이다 보니 익숙하지 않은 사람이라도 읽고 쓰기가 쉽다.
프로젝트의 gradlew과 같은 위치에서 .travis.yml을 생성한 후 아래의 코드를 추가
language: java
jdk:
- openjdk8
#1
branches:
only:
- master
# Travis CI 서버의 Home
#2
cache:
directories:
- '$HOME/.m2/repository'
- '$HOME/.gradle'
before_install:
- chmod +x gradlew
#3
script: "./gradlew clean build"
#4
#notifications:
# email:
# recipients:
# - 본인의 이메일
#1
branches
- Travis CI를 어느 브랜치가 푸시될 때 수행할지 지정
- master 브랜치에 push되는 경우에만 실행
#2
cache
- 그레이들을 통해 의존성을 받게 되면 이를 해당 디렉토리에 캐시하여, 같은 의존성은 다음 배포 때부터 다시 받지 않도록 설정
#3
script
- master 브랜치에 푸시되었을 때 실행하는 명령어
#4
notifications
- Travis CI 실행 완료 시 알람이 가도록 설정(지정하지 않아도 된다)
해당 부분을 넣어주면 된다.
before_install:
- chmod +x gradlew