2015년 4월 4일 토요일

Windows에서 Jenkins 사용하기

일단 설치. 설치 경로는 C:\Jenkins 등 공백 문자가 없는 곳으로 지정한다. C:\Program Files (x86)\Jenkins에 설치하면 ruby-runtime plugin 등이 설치되지 않는다.

설치 완료 후 자동으로 로컬호스트:8080을 브라우저가 연다.

포트 번호를 바꾸고 싶다.

C:\\Jenkins\Jenkins.xml을 수정해서 8080을 다른 번호로 변경.

CMD창에서 jenkins.exe stop 하고, jenkins.exe start로 재시작한다.

브라우저로 변경된 주소를 연다.

기본 설정은 누구나 접근이 가능하고, 어떤 작업도 할 수 있게 되어 있다.

Manange Jenkins 메뉴에 들어간다.
먼저 사용자를 하나 만든다. Manage Users 클릭.

사용자 등록.

다시 Manage Jenkins > Configure Global Security로 간다.

Enable security 체크.

Security Realm에서 Jenkin's own user database 선택.

Allow users to sign up은 체크 해제.

위에서 사용자를 먼저 만든 이유는 아무나 등록할 수 없도록 하기 위해서다. 사용자를 먼저 만들어 놓지 않으면 설정을 변경하고 저장한 순간. 로그인도 못하고, 사용자 계정 등록도 못한다. 그런 경우에는 이 곳 참고.

Authorization에서 Matrix-based security를 선택했다. 원하는 것을 선택해서 설정하자.

그리고 Save.

다시 로그인을 해야 한다.

이후, Bitbucket plugin, Build Authorization Token Root Plugin, Batch Task Plugin, Yammer Plugin을 설치했다. 설치에 필요한 선결조건들은 알아서 설치된다.

Bitbucket plugin은 너무 간단해서 별 쓸모가 없었다. 사용자 인증을 해야 사용할 수 있게 해놓았기 때문에 Build trigger URL을 token으로 외부에서 인증없이 호출하기 위해 Build Authorization Token Root Plugin을 설치.

Yammer Plugin을 설치할 때 선결조건인 ruby-runtime이 설치가 안되어서 한참 헤맸다. 문제는 Jenkins의 설치 경로 때문인데, 처음에는 기본 설치 경로인 C:\Program File (x86)\Jenkins에 설치를 했었다.

Yammer Plugin을 사용하려면, 앱 등록, 토큰 생성 등을 해야 한다.

오늘 몇시간 삽질한 결과 Bitbucket에 특정 모듈에 변경이 생기면 빌드를 하고, 그 결과를 Yammer에 포스팅하도록 했다.

권한 문제로 빌드시 git checkout이 제대로 안되는 경우 여기를 참고해서 설정한다. 귀찮으면 Service 관리도구를 열어서 Jenkins의 실행 계정을 사용하고 있는, git이 문제 없이 정상 동작하는 로컬 사용자 계정으로 설정해도 된다.