msbuild-plugin に機能追加したくて。久しぶりに java 書いたわー、vim で。といっても、数行だけど。
java
- http://www.oracle.com/technetwork/java/javase/downloads/index.html からダウンロード&インストール
- 環境変数に JAVA_HOME を定義
- bin フォルダにパスを通す
maven
- http://maven.apache.org/download.cgi からダウンロード&解凍
- bin フォルダにパスを通す
msbuild-plugin
- https://github.com/jenkinsci/msbuild-plugin/ から clone
mvn
を実行すると必要なもののダウンロードが始まる
デバッグ
mvn hpi:run
plugin がインストールされた状態で jenkins が立ち上がる
インストール package の生成
mvn install
target フォルダに .hpi ファイルができるので、jenkins の plugin 管理画面の高度な設定から .hpi をアップロードする。
ファイルの削除に失敗とかでるけど jenkins を再起動すれば ok
まとめ
新しく構築した windows 8.1 環境で msbuild でビルドすると fakes 周りのエラーがでてしまう。ビルドが通ったり通らなかったり。ググってみると同様に困っている人がいるようだ。関連する dll の参照をつけろとかあったけど・・・多すぎてちょっと辛い。全部参照つけてしまったほうが速いぐらいだがそれでもきちんと通るのか怪しいレベル。なので、
- sln から ruby script でテストプロジェクトを抜いたあとにビルド
- テストプロジェクトを個別にビルド
- ビルドで失敗した場合 (msbuild の戻り > 0) の場合に 3 回までリトライ (msbuild-plugin の改造)
としてみた。割といい感じではある。msbuild の戻り値が 0 or 1 かと思ったらそうでもないようなのだが、この一覧はどこを見ればのっているのか。ちなみに、直前の実行コマンドの戻り値が %ERRORLEVEL%
で取れることを今日初めて知った・・・。だから msbuild xxx.sln && exit %ERRORLEVEL%
っていうふうに実行コマンドに含まれてるのか。