빌드관리

Jenkins로 Ant Build 자동화 구축 - 1부 Jenkins 개요와 설치

by PSEG posted Nov 30, 2016
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

이 문서는 Jenkins, Git, Ant Build를 이용하여 빌드 자동화 CI 서버 구축에 대한 예제를 다룹니다. 요즘 추세가 Maven이나 Git을 사용하고 있지만, 쉽게 개발 환경을 전환하지 못하는 조직이 많이 있어 SVN과 Git 연동에 대한 모두를 다루고자 합니다.


이 문서는 다음과 같이 3가지로 파트로 진행될 예정입니다. 


Jenkins

Jenkins는 소프트웨어를 빌드하는 작업과 혹은 크론(cron)에 의해서 실행되는 반복 작업들을 실행하고 모니터링할 수 있게 해주는 솔루션입니다. 


Jenkins는 Agile에서 말하는 프로젝트의 빌드와 테스트의 지속성을 위해 적절하게 사용됩니다. 즉 지속적인 통합 Continuous Integration을 위한 오픈소스 중 최적의 솔루션입니다. Agile Practice에서는 지속적인 통합은 생산성을 증가시켜준다고 말합니다. 실제적으로 시스템 통합에 많은 시간을 빼앗기는 프로젝트에서 유용하게 사용될 수 있습니다. 


Jenkins의 주요 특징

쉬운 설치

일단 설치가 정말 간단합니다. 설치 파일을 받아서 실행하면, 끝입니다. 혹은 War파일을 다운로드 받아 서버에 배포해도 됩니다. 그러면 바로 시작할 수 있습니다.

쉬운 설정

Jenkins은 빌드 아이템에 대한 즉각적인 에러 확인과 화면 속에서 인라인 도움말을 제공합니다. 

다양한 형상관리 시스템 연동

SVN, CVS, Git 등 대부분의 형상관리 시스템과 연동됩니다. 인증 정보만 입력하면 자동으로 체크아웃하여 코드를 받아올 수 있습니다. 

영구링크

빌드 정보를 제공하는 영구 링크를 제공합니다. http://url/job/projectname/lastStableBuild 와 같이 최신 성공한 빌드 정보도 확인할 수 있습니다.

빌드자동보고

빌드에 대한 정보를 RSS/Email 등으로 실시간으로 받아 보고 모니터링할 수 있습니다. 

테스트 연동 실행

Junit, TestNG 등과 연동하여 테스트 결과, 테스트 커버리지 등 테스트가 언제 실패했고 성공했는지에 대한 히스토리 정보를 제공합니다. 

분산빌드

Jenkins는 여러 컴퓨터에서 분산 빌드/테스트를 실행할 수 있게 해줍니다. 빌드가 많아 성능 이슈가 있으면, 혹은 Cross 컴파일 환경이라면 분선 빌드를 통해 해결할 수 있습니다. 


Jenkins 설치

윈도우용 Jenkins 설치 가이드는 다음 링크를 참조하시기 바랍니다. 

  • http://pseg.or.kr/pseg/infoinstall/4872
설치를 완료하고 로그인을 하면 다음과 같은 화면이 나옵니다.
 
jenkins.png

본 1부의 Jenkins 소개와 설치에 이어 2부에서는 실제 Jenkins에서 SVN과 Ant 빌드를 위한 Build 구성에 대해서 다루도록 하겠습니다.