homebrew jenkins 설치

homebrew로 젠킨스를 설치하는 방법에 대해서 알아보자.

1. Homebrew 설치하기


ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew는 OS X 개발 환경을 개선한다. 자세한 설명은 여기로...
http://brew.sh/index_ko.html

2. 젠킨스(Jenkins) 설치


brew install jenkins

젠킨스를 설치 할때 다음의 에러가 발생하면 자바 JDK를 설치 해준다.
친절하게 어디서 다운로드 받을지 알려준다.
http://www.oracle.com/technetwork/java/javase/downloads/index.html

mybookui-MacBook-Pro:~ mybook$ brew install jenkins
jenkins: Java 1.7+ is required to install this formula.
You can install with Homebrew Cask:
  brew install Caskroom/cask/java

You can download from:
  http://www.oracle.com/technetwork/java/javase/downloads/index.html
Error: An unsatisfied requirement failed this build.


3. 맥 부팅시 자동 실행


cp -p /usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents

~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist 파일의 내용이다.

<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>Jenkins</string>
    <key>ProgramArguments</key>
    <array>
      <string>/usr/bin/java</string>
      <string>-Dmail.smtp.starttls.enable=true</string>
      <string>-jar</string>
      <string>/usr/local/opt/jenkins/libexec/jenkins.war</string>
      <string>--httpListenAddress=127.0.0.1</string>
      <string>--httpPort=8080</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>

간단한 설정의 예이다.
부팅시 자동 로그인을 해제 할려면 RunAtLoad 아래 값을 false로 바꾼다.

문자열 인코딩 설정
<string>-Dfile.encoding=utf-8</string>

외부에서 연결하는 경우는 다음의 행을 삭제한다.
<string>--httpListenAddress=127.0.0.1</string>

포트를 바꾸는 경우
<string>--httpPort=8080</string>

4. 젠킨스 종료, 재 실행


젠킨스 종료
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

젠킨스 재 실행
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

5. Slave Agent 만들기

젠킨스를 Slave Agent를 만들어서 실행한다.

1. Agent 노드를 만들기 위해  "Jenkins 관리 > 노드 관리" 페이지로 이동한다

2. 왼쪽의 신규 노드 클릭


3. 노드 이름과 Dumb Slave 체크




4. 노드 설정

Name은 원하는 이름으로 만든다. 여기서는 "builder"로 하였다.

Remote root directory는 프로젝트를 빌드할 루트 작업 디렉토리이다.
젠킨스에서 새로운 Item(프로젝트)을 생성하면 /Users/bird/project에 들어간다.



5. 슬레이브 노드가 생성 된 화면이다.


6. 슬레이브 에이전트 만들기

Launch 버튼을 클릭하여 슬레이브 에이전트가 다운로드 된다.



7. 슬레이브 에이전트를 실행하기 전에 보안을 해제한다.




8. 다운로드 받은 슬레이브 에이전트 실행

정상적으로 실행된 화면이다.


참고)
OSX 젠킨스 관련
https://wiki.jenkins-ci.org/display/JENKINS/Thanks+for+using+OSX+Installer
http://savvyapps.com/blog/continuous-integration-ios-jenkins
http://qiita.com/makoto_kw/items/cbe93d4ebbc35f3b43fd

Slave Agent 만들기
http://la-stranger.blogspot.kr/2013/10/unity-os-jenkins-2.html