날짜별 글 목록: 2010년 7월 5일

CI(Continuous Integration) 기능 매트릭스

CI를 지원하는 툴에 대해서 살펴보니, 오픈소스 그리고 상용으로 팔고 있는 것들이 많이 있다.
대표적으로 ThoughtWorks의 크루즈컨트롤(CruiseControl)과 허드슨(Hudson, 최근 Jenkins로 많이 이동)을 많이 사용하고 있다. 하지만 다른 툴들에 대한 자세한 정보가 없어서 위 두가지 중에 선택해야 하나 고민을 하던 중에, ThoughtWorks의 위키에서 CI 기능 메트릭스(Feature Matrix) 페이지에서 다양한 CI에 대한 내용을 보게됐다. 정말 유용한 정보들이다.

CI툴에 대해서 비교 분석한 몇 개의 페이지를 공유해 본다.

* ThoughtWorks의 CI Feature Matrix
* Choosing continuous integration (CI) tool. Comparison : CruiseControl, Hudson, Continuum vs. TeamCity

CI(Continuous Integration) 정의

CI(지속적인 통합)의 정의는 다음과 같다.

지속해서 통합을 유지하는 개념으로, 통합 대상은 소스이고, 실행형태는 빌드의 과정으로 소스의 상태를 지속해서 안정적인 상태로 유지하는 개념이다.

이 정의를 실현하는 툴로, Thoughtworks사의 크루즈컨트롤(CruiseControl), 젠킨스(Jenkins) 등이 있다. 그리고 지속적인 통합에 대한 내용으로, Martin Flower의 CI 내용을 참고하면 좋다.