98..Etc/Hudson2010. 11. 30. 15:32
반응형

CI 스터디에서 참관멤버인 kenny 군이 소개한 CI TOOL인 hudson 이 무료이면서 기능 또한 상당히 좋은것 같아 바로 설치해 보았다.
(설치한 날은 꽤 지났는데, 이제야 포스팅 하네요;;)

OS : solaris 10
CI TOOL : hudson
버젼관리 : CVS
빌드 : ANT

JDK 1.6 설치
http://java.sun.com
Java SE Development Kit 6u7
jdk-6u7-solaris-sparc.sh  79.45 MB 
Java SE Development Kit 6u7
jdk-6u7-solaris-sparcv9.sh  10.79 MB 

64bit 시스템이라서 solaris-sparcv9 도 설치

[hostname:/usr/jdk] sh ./jdk-6u7-solaris-sparc.sh
라이센스 읽고 나서 yes 입력후 ENTER
[hostname:/usr/jdk] sh ./jdk-6u7-solaris-sparc.sh
라이센스 읽고 나서 yes 입력후 ENTER

/usr/jdk/jdk1.6.0_07 에 설치완료

ciuser 사용자계정생성
useradd -g other -d /export/ciuser -s /bin/ksh ciuser

tomcat 설치
http://tomcat.apache.org/download-60.cgi
/export/ciuser 에 압축 해제.
/export/ciuser/apache-tomcat-6.0.16/conf/server.xml 에서 port 8080 에서 8090 으로 변경

ant 설치
http://ant.apache.org/bindownload.cgi
/export/ant 에 압축 해제.

hudson 설치
https://hudson.dev.java.net/servlets/ProjectDocumentList?folderID=2761&expandFolder=2761&folderID=0
에서 최신버젼을 다운로드
/export/ciuser/apache-tomcat-6.0.16/webapps 에 hudson.war 를 복사한다.
ROOT direcotry로접근 (http://xx.xxx.xxx.xxx:8090/)을 위해 tomcat 의 $CATALINA_HOME/webapps 밑에 모든파일 삭제후  hudson.war 를 webapps 에 복사후 ROOT.war 로 이름변경
자세한 사항은 다음을 참고한다.
http://hudson.gotdns.com/wiki/display/HUDSON/Tomcat

To install Hudson on Tomcat, simply copy hudson.war to $TOMCAT_HOME/webapps, then access http://yourhost/hudson.
If you are running Tomcat just to host Hudson, then remove everything from $TOMCAT_HOME/webapps, and place hudson.war as ROOT.war. Tomcat should expand this and create the ROOT directory, and you should see Hudson in http://yourhost/ without any additional path. This also works nicely when you set up a virtual host, as it allows a single Tomcat instance to run multiple applications, yet users can still access your hudson with URLs like http://hudson.acme.org/ without any additional path. See the Tomcat documentation for more about how to set up a virtual host.

환경변수및 PATH 설정
다음과 같이 환경변수 및 PATH 를 설정한다.(.profile)
vi /export/ciuser/.profile

export JAVA_HOME=/usr/jdk/jdk1.6.0_07
export PATH=$JAVA_HOME/bin:$PATH:.
export CVSROOT=:pserver:dev@localhost:/public
export CVS_PASSFILE=/export/ciuser/.cvspass
export ANT_HOME=/export/ant
PATH=$PATH:$ANT_HOME/bin:$ANT_HOME/lib
export HUDSON_HOME=/export/ciuser/hudson_home
export CATALINA_HOME=/export/ciuser/apache-tomcat-6.0.16

hudson 사용을 위한 모든 준비작업이 완료됐다.
이제 접속해 보자.
서버의 아이피를 12.12.12.12 로 가정하자.

http://12.12.12.12:8090/
다음과 같이 처음화면이 나온다.

사용자 삽입 이미지

create new jobs 를 클릭해서 새로운 프로젝트를 생성하자.
(이미 CVS 에 zcitest 라는 프로젝트가 추가되어 있다고 가정한다.)
사용자 삽입 이미지
job name 을 프로젝트명과 동일하게 (물론 틀려도 된다.) 입력하고 Build a free-style software project 를 선택한다.
사용자 삽입 이미지

새로운 job 에 대한 환경설정(configure)이다.
Source code Management
CVS 로 지정할 때는 주의해야 할 점이 하나 있다. 바로 패스워드지정이다.
해당 configure 화면에서는 패스워드를 입력하는 텍스트박스가 없다. 그렇다고 anonymous 로 해 놓을수도 없는 노릇이다. hudson 에서 cvs 패스워드를 지정하는 방식은 2가지가 있다.
1. 환경변수
위의 환경변수및 PATH 설정 에서  export CVS_PASSFILE=/export/ciuser/.cvspass
를 추가했던 것이 바로 hudson 에서 사용하는 cvspass 파일을 지정해주는 환경변수이다. .cvspass 는 cvs 에서 자동으로 만들어 주는 것이다. 해당계정(솔라리스계정)에서 cvs server 로 로그인 할 경우 계정홈디렉토리에 .cvspass 파일이 생성된다.
2. 직접지정
Manage Hudson -> Configure System 를 보면
CVS 부분에 .cvspass file 을 입력하는 텍스박스가 있다. 여기에 직접경로(/export/ciuser/.cvspass)를 지정하면 된다.

Build
Add build step 에서 Invoke Ant 선택후 실행할 Target 을 지정하면 된다.

환경설정을 맞추면 다음과 같은 완료화면이 나타난다.
사용자 삽입 이미지

이제 실행해 보자 Build Now 를 클릭하면 실행된다.
사용자 삽입 이미지

Build 시 에러가 발생되면 해당 로그에 Output 을 보고 해결하면 된다.


출처 : http://bestbang.tistory.com/30
Posted by 1010