이 페이지는 Bamboo agent를 이용해 parallel 빌드 및 테스트를 구성하는 예를 설명한다.
개요
Bamboo 빌드 plan 구조 이해
명칭 | 설명 | Parallel 가능 |
---|---|---|
Project | 최상위 빌드 구조로써 하나 이상의 plan 포함 | |
Plan | 빌드 작업의 최상위 구조로써 Job들이 그룹화된 다수의 stage 포함 가능 | |
Stage | 그룹화된 Job들의 순차적인 수행 기능 제공 | |
Job | 단위 작업들의 그룹 | |
Task | 수행 단위 |
Requirements
- Jenkins의 빌드 구성과 유사하게 구성 (병렬/순차 실행 구성 중요)
- 빠른 빌드 시간 중요
- Agent 개수 제한 없음
제안 구성
다양한 구성이 가능하지만 다음과 같은 고려사항을 반영한 빌드 계획을 제안한다.
- 유지보수성: 빌드 Option 에 따라 plan을 구성하여 enable/disable, 그리고 추가 용이 하도록 구성
- 빌드 결과물 (Artifacts) 공유 기능 활용: Bamboo의 artifact sharing 기능을 이용해 option 별로 빌드된 결과를 test stage에서 활용
Build Job의 Agent 할당
- Build/Test 작업 환경이 모든 agent에서 수행 가능한 경우:
- Job 개수 (본 예의 경우 테스트 job의 개수) 이상으로 확보하면 Bamboo가 자동으로 병렬 수행
- Build/Test 작업 환경이 특별한 agent에서만 수행 가능한 경우:
- Bamboo의 Agent capability 기능과 Job의 requirement 기능을 이용해 Job이 agent에 자동 할당되도록 구성