시작하기 전에
본 튜토리얼에 기대하는 점이 무엇인지, 무엇을 얻을 수 있는지 알아보자.
본 튜토리얼은 CI의 기초를 다룬다. CI가 무엇인지, 왜 필요하며, 어떻게 작동하는지, CI 환경에서 개발 속도는 어떤지가 그것이다. 반복할 수 있고 안정된 빌드 프로세스(build process)를 가져오는 CI 프로세스를 설정하는 방법도 보여준다.
CI 서버를 제대로 설정하여 SCM 저장소에 연결하고 소스코드에서 변화가 감지될 때 앤트 빌드 프로세스를 실행하는 방법에 대해서도 다룰 것이다. 또한 자동화된 JUnit 테스트를 실행하는 방법과 PMD와 FindBugs 모두에서 소프트웨어 검사(inspection)를 실시하는 방법을 다룰 것이다. 마지막으로 최신 CI 서버라는 허드슨(Hudson)이 문제를 발견했을 때 어떻게 알려주는지, 안정적인 소프트웨어를 신속하게 만드는 방법은 무엇인지도 다룰 것이다.
이 튜토리얼은 프레임워크에 따라 허드슨, 앤트, 서브버전(Subversion)을 사용한 CI의 기본 개념을 단계별로 안내한다. 한 시간짜리 본 튜토리얼을 마치고 나면 CI의 장점을 알게되고 협업에 필요한 허드슨, 앤트, 서브버전을 설정 및 구성 방법을 이해할 수 있을 것이다. 빌드 프로세스의 결과물은 테스트와 소프트웨어 검사에서 모두 작동하고 문제 발생시 즉각 보고를 할 것이다.
본 튜토리얼에서 최대 효과를 누리려면 일반적인 자바™ 개발에 대해 익숙해야 한다. 또한 JUnit으로 소프트웨어를 개발하는 가치와 질을 이해해야 한다.
CI 환경에는 자동화된 빌드 도구, 코드 저장소, CI 서버가 필요하다. 본 튜토리얼을 실습하려면 자바 플랫폼, 허드슨 1.150, 앤트 1.7, JUnit 3.8.1, 서브버전 1.4.x를 설치해야 한다.
본 튜토리얼에서 필요한 시스템 구성은 다음과 같다.
- 썬 JDK 1.5.0_09(또는 그 이후 버전)나 자바 1.5.0 SR3를 위한 IBM Developer Kit를 지원하는 시스템과 적어도 500MB 이상의 주 메모리y
- 소프트웨어 컴포넌트를 설치하고 예제를 다룰 적어도 20MB 이상의 디스크 공간
본 안내서는 마이크로소프트® 윈도우® 운영체제를 기반으로 한다. 본 튜토리얼에서 다루는 모든 도구는 리눅스®와 유닉스® 시스템에서도 작동한다.
