2.1.2.2 Travis CI 구성 파일
.travis.yml
파일을 통한 프로젝트 구성 방법
.travis.yml
파일은 Travis CI에서 프로젝트의 빌드, 테스트 및 배포 과정을 정의하는 핵심 구성 파일입니다. YAML 형식으로 작성되며, 프로젝트의 루트 디렉토리에 위치해야 합니다. 이 파일을 통해 Travis CI 빌드 환경을 설정하고, 실행할 스크립트 및 후속 작업 등을 정의할 수 있습니다.
기본 .travis.yml
파일 구조
language: java # 사용할 프로그래밍 언어 지정
jdk: # 사용할 JDK 버전
- openjdk11
script: # 빌드 및 테스트 스크립트
- ./gradlew build
- ./gradlew test
after_success: # 빌드 성공 후 실행할 스크립트
- echo "Build succeeded."
after_failure: # 빌드 실패 시 실행할 스크립트
- echo "Build failed."
notifications: # 알림 설정
email:
recipients:
- your-email@example.com
on_success: change # default: change
on_failure: always # default: always
알아두면 좋은 팁
-
다양한 언어 지원: Travis CI는 Java, Python, Node.js 등 다양한 프로그래밍 언어를 지원합니다.
language
키를 통해 해당 프로젝트에 적합한 언어를 지정하세요. -
환경 변수 설정:
env
키를 사용하여 환경 변수를 설정할 수 있습니다. 비밀 정보나 API 키 같은 민감한 데이터는 Travis CI 웹 인터페이스의 환경 변수 섹션에서 안전하게 관리하세요.
env:
global:
- MY_SECURE_VAR=secure_value
- 빌드 매트릭스 사용: 여러 버전의 언어나 다양한 환경에서 테스트를 수행해야 하는 경우,
matrix
또는jobs
키를 사용하여 빌드 매트릭스를 구성할 수 있습니다.
jobs:
include:
- language: java
jdk: openjdk8
- language: java
jdk: openjdk11
- 캐싱을 활용한 빌드 속도 향상: 의존성 파일을 캐시하여 빌드 시간을 단축시킬 수 있습니다. 예를 들어, Maven이나 Gradle의 의존성 캐시를 활용하는 것이 좋습니다.
cache:
directories:
- $HOME/.m2
- $HOME/.gradle
- 조건부 빌드 및 배포:
if
조건을 사용하여 특정 조건에서만 작업을 실행하도록 설정할 수 있습니다. 예를 들어, 특정 브랜치에 푸시될 때만 배포 과정을 실행하게 할 수 있습니다.
deploy:
provider: script
script: bash deploy.sh
on:
branch: master
.travis.yml
파일을 통한 구성은 프로젝트의 CI/CD 파이프라인을 정교하게 관리할 수 있게 해줍니다. 여러 설정과 옵션을 적절히 활용하여 프로젝트의 요구 사항에 맞는 최적의 빌드 및 배포 프로세스를 설계하세요.
source: DevOps/2.Continuous_Integration_(CI)/2.1.Jenkins_TravisCI_GitHubActions/2.1.2.TravisCI/2.1.2.2.md