なでしこ2をubuntu cuiでテストする - shigeponが関心のある技術情報など までやったので、CIできると便利かなと思ってやってみた。と言いつつ、単にやってみたかっただけ。mono developとかvisual studio使って開発する場合も同じように出来ると思う。例によって環境はUbuntu 12.04
参考:
- .NETとJenkinsで始めるCI開発 - CREST’S WEBLOG
- Create a Mono C# Buildserver using Jenkins and GitHub ~ BroersA Blog
1. Jenkinsインストール
(略) 追記するかも?
2. Jenkins設定
一般
(略) 追記するかも?
C#関連
Jenkins > Jenkinsの管理 > プラグインの管理 > 利用可能(タブ)
からプラグインをインストールする。インストールするプラグインは
- GIT Plugin
- MSBuild Plugin
- NUnit plugin
Jenkins > Jenkinsの管理 > システム設定
から
MSBuildの項目を編集。
- インストール済みMSBuild...をクリック
- name
- 適当(とりあえず「mono」とした)
- Path to MSBuild
- /usr/bin/xbuild (Warning出るけど気にしない)
- Default Parameters
- なし(Debugでビルドするかとか指定したりするかも。)
- 適用ボタンを押す
Gitの項目は編集したか覚えてないけど
- Path to Git executable
- /usr/bin/git
くらいやっとけばいいかも?
3. プロジェクト作成
Jenkins > 新規ジョブ作成 から
- ジョブ名
- 適当(nadesiko2とか付けてみた)
- フリースタイル・プロジェクトのビルドを選択
- OKボタンを押す
4. プロジェクト設定
プロジェクトの設定画面に移動するので編集。Jenkins > プロジェクト(今回はnadesiko2) > 設定 からいつでも編集可能。
- ソースコード管理
- Gitを選択
- Repository URL
- なでしこ2のリポジトリの場所。今回はubuntuのcui環境でなでしこ2をビルドする - shigeponが関心のある技術情報などの続きなので/home/username/nadesiko2
- Branches to build
- なでしこ2では変更点はpull requestする予定なので、pull requestする時のブランチを指定した。ここは色んな設定がありえる。
- ビルド・トリガ
- SCMをポーリングを選択
- スケジュール
- H/30 * * (大体30分おき)
- ビルド
- ビルド手順の追加 > Build a Visual Studio project or solution using MSBuild
- Build a Visual Studio project or solution using MSBuildの設定
- MSBuild Version
- monoを選択
- MSBuild Build File
- cnakoのソリューションファイルとしてNako2_CNako.slnを指定した。プラグインのソリューションファイルでも出来ると思う
- ビルド手順の追加 > シェルの実行(Windowsだと多分Windowsバッチコマンドの実行)
- シェルの実行
- nunit-console $WORKSPACE/CNako2Test/bin/Debug/CNako2Test.dll -xml cnako2test.xml -noshadow
- ビルド後の処理
- ビルド後の処理の追加 > Publish NUnit test result report
- cnako2test.xml
5. 実行
Jenkins > プロジェクト(今回はnadesiko2) で、ビルド実行をクリックすると実行してくれる。あと、gitの指定したブランチでコミットした後もこの設定の場合30分おきにコミットをチェックしてビルドを実行してくれる。まだまだテストが通ってない部分もあるので、結果は失敗になるけど、とりあえずこれで進められる。