Jenkinsいじってみよう
一人だと要らないんだけど、複数人で始めるとどうしても要るよね。てことでメモ。
https://wiki.jenkins-ci.org/display/JA/Jenkins
インストール方法はマジ簡単。ServletContainer で動かすか、
java -jar jenkins.jar
詳しいのは ここ
セットアップ自体はかなり一瞬。とりあえず Java コマンド実行時に出たログぺたり。
Running from: C:\xxxx\jenkins\jenkins.war webroot: $user.home/.jenkins 2012/02/12 10:29:12 winstone.Logger logInternal 情報: Beginning extraction from war file Jenkins home directory: C:\Users\(userDir)\.jenkins found at: $user.home/.jenkins 2012/02/12 10:29:23 winstone.Logger logInternal 情報: HTTP Listener started: port=8080 2012/02/12 10:29:23 winstone.Logger logInternal 情報: AJP13 Listener started: port=8009 ....略 2012/02/12 10:29:44 org.jenkinsci.main.modules.sshd.SSHD start 情報: Started SSHD at port 49832 2012/02/12 10:29:44 jenkins.InitReactorRunner$1 onAttained 情報: Completed initialization 2012/02/12 10:29:44 hudson.TcpSlaveAgentListener <init> 情報: JNLP slave agent listener started on TCP port 49833 2012/02/12 10:29:54 hudson.WebAppMain$2 run 情報: Jenkins is fully up and running
基本動作は、ユーザディレクトリで行われ、アクセスは 8080 ポートでできるらしい。
次に eclipse と subversion 用意。どっちも嫌いだから使わないケド、、、。(普段 inteliJ+Hgだから)
- eclipse は横着して http://mergedoc.sourceforge.jp/
- subversion も横着して http://tortoisesvn.net/ CommandLineClientTool も一緒に入れる。
- SVN鯖も入れる。面倒な、、、http://d.hatena.ne.jp/white-azalea/20090202/1233583605
一段落したら全部焼き払ってやる!(某ムのつく人)
eclipse から m2e プラグイン突っ込んどけ。幸せになれると思う。
Subversionにコミット。
最近の CollabSubversion はHTTP鯖設定までついてるのな。
- http://localhost:3343/csvn/ こんなコトすると、何気にアクセスできる。
- 「設定管理」で適当なポート番号(私は8090指定。なんせ80ポート使ってるしー)を指定。
- 「リポジトリ>新規リポジトリ」開いて、新規に追加。
- 「ステータス>起動」をポチットな。
そしたらプロジェクトに戻って、早速コミット。
作成したリポジトリが「sample」の場合、「http://localhost:8090/svn/sample」でいける。
Jenkns 設定。
- 「Jenkinsの管理>設定」を開いて、JDK、Mavenインストールディレクトリを指定する。(Ant使う場合はそっちを)
- ビルドが壊れた時に通知欲しければメールも設定する。
- 「新規ジョブ作成>Maven2/3プロジェクトのビルド」
- 名前を適当に突っ込んで「OK」
- 「ソースコード管理システム」に Subversion と、リポジトリを「http://localhost:8090/svn/sample」で指定。認証が要るとか言われるので、設定する。
- プロジェクト開いて、「ビルド実行」
これだけで黙っててもテストレポートまで全部出す。
ステキすぎるだろ。
追加プラグイン
取り敢えず、「Jenkinsの管理>プラグインマネージャ>利用可能」から「Cobertura Plugin」を突っ込む。
FindBugs とかいろいろ突っ込みたければどぞ。
まず、pom.xml に以下の追記。
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.2</version> <configuration> <formats> <format>xml</format> </formats> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>cobertura</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
コンソール実行は、「covertura:covertura」で実行可能。
これでレポートが出てくる。
ディレクトリは、「(project_root)\target\cobertura」なので、Jenkins のプロジェクト設定を開いて
- 「PostStep>Mavenの呼び出し」で、Maven3のコール「clean cobertura:cobertura」を登録。
ほげっとコミットしてビルドすればおk