DS's『 행복합시다 』

Carpe Programming/eGovFramework

[hudson] 설정

nolite 2014. 4. 14. 18:41
반응형

蛇足...

 

gradle 로 넘어가기 전에 현재 하고 있는 프로젝트에 가볍게 적용해 보려고 했는데 거의 1주일 정도 삽질 한 것 같다.

 

원래 차근히 하는 성격이 아니라 일단 막 해보면서 기능이나 메뉴가 눈과 손에 익을 때 까지 삽질하는 스타일이라

 

어쩔수 없이 시간이 걸리고 어찌 어찌 되더라도, 지쳐서 정리도 안 하는 경우가 많아서 또 고생을 하는데...

 

그래서 이 번에는 기억에 남아 있는 것이라도 정리한다.

 

다른 사람들이 정리한 거랑 똑 같을 건데.... 이상하게도 안 됐다.

 

그래서 다시 정리하는 거.

 

나만 볼 거다. (대충 정리하겠다는 얘기)

 

 

 

1. hudson, maven, tomcat 등을 각 가 받아도 되지만, 한 번에 묶여 있는 전자정부 프레임워크 홈페이지에서 받자.

 

   http://www.egovframe.go.kr/cop/bbs/selectBoardArticle.do?nttId=715&bbsId=BBSMSTR_000000000002

 

 

 

2. 은밀한 곳에 압축을 풀고 최상위 폴더에 있는 start.bat 을 실행시킨다.

    경로가 다 잡혀 있어서 편하다.

 

    확인은 http://127.0.0.1:8080/hudson ,    http://127.0.0.1:8080/nexus

 

 

 

3. 앙심을 품은 사람에게 테러를 당할 수도 있으니 접근 권한 설정을 하자.

    (그림이 있으면 좋으나 화면이 간단해서가 아니라 단순히 귀찮아서 생략)

 

    ㄱ. Hudson 관리 -> Configure Security 메뉴로 이동.

         Enable security 체크 박스 체크

 

    ㄴ. Access Control -> Security Realm -> Hudson's own user database 체크 하위 체크 박스 2개 모체크

                                -> Authorization   -> Logged-in users can do anything 체크

 

    ㄷ. 화면 우상단에 있는 가입 버튼 클릭 후 계정 생성

 

    ㄹ. 생성한 계정으로 로그인 후 설정 화면으로 다시 와서 Access Control -> Security Realm -> Matrix-based security 선택 후

         Anonymous 계정에는 Overall 에 Read 계정만 체크 하고 밑에 있는 User/Group to add 에 좀 전에 생성한 계정 입력 후

         마우스로 Add 버튼 클릭하고, 모든 권한에 체크 

 

 

 

4. 시스템 설정

 

    메인화면 -> Hudson 관리 -> Configure System

 

 

잘 안 보이기는 하는데... 상관 없다.

별 내용 없다. 

 

 

 

jdk & ant 가 자동으로 잡혀 있다.   할 거 없다.   편하다.

 

 

 

svn, cvs 등 경로만 확인하면 되고, e-mail로 report를 받을 경우 smtp 설정을 해준다.

 

 

5. 이제 Job 등록을 하자.

 

 

메인화면 -> 새 작업 -> 작업명 적당히 적고 맨 위에 있는 Build a free-style software job 을 선택한 후 OK 버튼 클릭

 

 

job 이름을 적당히 적고, 설명도 적당히 슥슥.

Discard Old Builds - 빌드 로그 보관 기간 설정

 

 

 

Quiet period : 이 프로젝트의 빌드가 완료 후 다른 프로젝트를 빌드하도록 설정되어 있다면 현재 프로젝트 빌드 완료 후,

                    Quiet period에 지정된 시간만큼 기다렸다가 다른 프로젝트를 빌드 하도록 설정

Rdtry Count : 빌드 재시도 횟수

Use custom workspace : 프로젝트는 각각의 workspace를 가지는데 이 옵션을 체크하면 다른 프로젝트의 workspace를 사용

Repository URL : svn 경로 설정

Local module directory : check out 경로

 

 

 

 

[Build Triggers]

Build after other projects are build : 다른 프로젝트 빌드 현재 프로젝트를 빌드

                                                   Projects names에 선행 될 프로젝트 명 기입

Poll SCM : 소스 관리 시스템을 체크하여 변경이 있을 경우에만 빌드 수행

Build periodicaly : 빌드 주기 설정 => 분(0-59), 시(0-23), 일(1-31), 월(1-12), 요일(0-7)

 

[Build]

Invoke Maven2 : Maven 프로젝트 빌드

Execute shell   : Shell 명령을 수행(Linux)

Execute Windows batch command : 윈도우 batch command 명령을 수행(Windows)

Invoke Ant : Ant type의 프로젝트 빌드

 

[Post-build Actions]

빌드 후 수행 할 작업으로 빌드 후 각종 플러그인과 연동

빌드 결과를 메일로 받는 등의 설정을 할 수 있다.

 

 

----------------------------------------------------------------------------------------------------------------------

 

요렇게 하고, 빌드를 뙇!! 했는데...   역시나...

이 상태로 며칠을 잡아 먹었는지...ㅜ.ㅜ 

 

bin/apache-maven-3.0.5/bin/mvn.bat 파일에서 JAVA_HOME 을 못 찾는다고 징징대서 set 해주고,

job 이름을 한글로 해도 된다고 누군가의 블로그에 되어 있어서 거하게 낚였다가 다시 영어 이름으로 바꿔주고,

이븐이가 플러그인을 못 받아서 관련 설정을 이렇게 저렇게 해봤고, target을 못잡는 것 같아서 요래 조래 해 봤더니

어디에서 됐는지 모르겠다는....@.@

 

처음부터 설정 할만한 부분은 다 했기 때문에 엄청 답답했는데, 생각해보니 svn에 있는 소스 자체의 문제였던 것 같다.

svn 서버 재기동하고 소스 다시 올린 후에 된 것 같다.   (그렇게 믿고 싶다.)

 

----------------------------------------------------------------------------------------------------------------------

 

[deploy]

 

1. Tomcat/conf/tomcat-user.xml 수정

 <tomcat-users>
    <role rolename="manager-script"/>
    <role rolename="manager-gui"/>
    <user username="admin" password="1234" roles="manager-gui, manager-script"/>
</tomcat-users>

 

※ tomcat role 관련된 참조 : http://tomcat.apache.org/tomcat-6.0-doc/manager-howto.html

 

 

2.

Hudson 관리 -> Manage Plugins -> Hudson Deploy Plugin 설치 -> 재시작

job 관리 -> Post-build Actions -> Deploy war/ear to a container 설정

 

 

 

728x90
반응형