이 문서는 Atlassian Bamboo CI(Continuous Integration) 컨셉을 공유하기 위해 작성되었다. 


Bamboo는 소프트웨어 어플리케이션의 지속적인 배포 파이프라인을 만들어 릴리즈 관리 자동화를 위해 사용되는 지속적인 통합(CI : Continuous Integration) 서버이다. 

CI는 코드가 저장소에 커밋될때 마다 빌드, 단위테스트, 통합테스트를 수행하는 소프트웨어 개발 방법론이다. 이를 통해 새로운 코드가 기존 코드와 잘 통합되는지를 확인할 수 있다. 통합 빌드는 새로운 변경 사항의 품질에 대한 초기 "fail fast" 피드백을 제공한다. 

릴리즈 관리에서는 빌드 및 기능 테스트, 릴리즈 태그 지정, 버전 할당, 프로덕션 환경에 새 버전 배포 및 활성화를 포함하는 소프트웨어 어플리케이션을 릴리즈 하기 위해 일반적으로 수행되는 단계를 기술한다.



Bamboo는 어떤 문제를 해결하는가?

만약 혼자서 개발을 한다면, Bamboo는 다음 혜택을 준다. 

만약에 팀에서 일하는 경우 위의 장점을 포함하여 Bamboo는 다음 혜택을 준다. 

크고 복잡한 소프트웨어에서 작업하는 경우 위의 장점은 포함하여 Bamboo는 다음 혜택을 준다. 


Bamboo는 어떻게 이것을 하는가?


Bamboo는 무엇이 필요한가?

Bamboo는 어플리케이션을 빌드하고 테스트하는 작업을 예약하고 조절한다. 그러므로 Bamboo를 사용하려면 다음과 같은 설정이 필요하다. 

일반적으로 코드를 변경한 사람은 결과 빌드 오류를 즉시 수정해야한다고 가정한다. 


Bamboo 워크플로우는 어떻게 구성되는가?

Bamboo는 Jobs과 Tasks로 구성된 계획으로 워크플로우를 구성하고 정렬한다.

Project

Plan

Stage

Job

Task