The Pragmatic Ball boy

iOSを中心にやってる万年球拾いの老害エンジニアメモ

第四回 Jenkins勉強会に参加してきた

第四回Jenkins勉強会に参加してきました。
今回はC++,C#ということで自分も使っていることもありかなりタイムリーネタでした。

マルチ構成プロジェクト

ロスコンパイルなどを使って複数の環境向けにデプロイする場合に使える
失敗したときに全部やり直すとものすごい時間がかかるので、MatrixReloadedプラグインを使うと失敗したものだけ再実行することができる。

Jenkins+αで開発環境がみるみるよくなる Visual C++

MSBuild
MSBuildを使う場合は、MSBuild自体は.NET frameworkないに入っているのでビルドマシンにVisual Studioをインストールする必要はない。

・WarningPlugin
WarningPluginは結構便利。途中から始める場合はすべての警告に対応するというよりも新たに発生したものを潰すために使ったほうがいいかも。設定もいろいろできる。

・UIの自動テスト
起動〜終了だけでもやると効果がある
UI操作自動化ツールとしては、AutoItやSikuliというのがある

・静的解析
Cppcheck Pluginくらい。C++だと無料なのはあまりいいのはない

・実装漏れ検知
Task Scanner Plugin。ソースコード内のto do などの文字列を発見してくれる。

・コーディングルールチェック
cpplint。google C++ Guidelineに沿ったチェックをしてくれる
violations PluginでJenkinsで実行できる。

・メトリクス
CCCC。使ってみたけどあまり使いものにはならなかった(誰も見ない)
Sonar。(C,C#はPluginで対応している)

・ドキュメント
Doxgen

・コラボレーションツール
Jenkinsからチケットを発行
コミット→条件判定(Python)→チケット発行 というようにしてやってる

輪るビングドラム.NET
・Role Strategy Plugin

・すべてのビルドをひとつのビルドマシンでやるのはよくない
・何も無いところ(クリーンな環境)からビルドすべき。でも毎回は時間かかりすぎてできないのでデイリービルドのみでやるとかする
・TFSよりJenkinsのほうが設定は楽。全部VisualStudioで完結させたいならTFS

Jenkins実装入門目次チラ見せしちゃいます
・おすすめのPlugin = Job Config History Plugin
だれがいつ設定をいじったのかHistoryでわかる

Jenkinsの使い方だけでなくtips的なものも載っているようで
初心者からよく使っている人まで使えそうな本みたいです。

参考資料
CI超入門:Jenkinsのすすめ

Video streaming by Ustream


C# 大阪Jenkins勉強会のC#の資料
Jenkins The Definitive Guide
http://www.wakaleo.com/download-jenkins-the-definitive-guide