個人的にお勧めのJenkinsプラグインをまとめてみました。
Table of Contents
1 C/C++開発で役に立つJenkinsプラグイン
1.1 JUnit Plugin
1.2 Cppcheck Plugin
静的解析ツールのCppcheckの結果をJenkins上に出力するプラグインです。静的解析ツールを用いることでコーディングミスを減らすことができます。CppcheckもMakefile解析をサポートしていて使い勝手が良いです。–inconclusiveオプションを使わなければFalse Positiveな結果も少ないので、検出結果の調査は無駄にならないでしょう。
Clang Scan-Build PluginというClang Static Analyzerを用いた静的解析ツールもあるのですが、残念ながらxcode専用のものとなっています。
1.3 Valgrind Plugin
メモリリーク検出ツールのValgrindの結果をJenkins上で実行し、出力するプラグインです。ValgrindはJenkinsのジョブで定期的に実行するべきです。メモリリークは最も難解なバグのひとつなので、ソースコードの変更内容が頭に入ってるうちに調査に取り掛かるようにしたいところです。
1.4 Cobertura Plugin
コードカバレッジの計測ができるようになります。CoberturaはJava用のコードカバレッジレポートツールですが、lcovとlcov-to-cobertura-xmlを用いることでC/C++でも使うことができます。
2 GUIアプリケーション開発で役に立つJenkinsプラグイン
2.1 XVnc Plugin
vncserverでディスプレイを作成してGUIアプリケーションを実行することができます。マウスイベント入力の自動化ツールを用いればGUI操作のテストも可能です。
2.2 VncRecord Plugin
vncserverで作成したディスプレイを録画できます。問題があった場合に画面を確認することができます。
2.3 VncViewer Plugin
vncserverで作成したディスプレイをリアルタイムで視聴できます。VncRecord Pluginとは異なり、動画を録画しません。
3 Android開発で役に立つJenkinsプラグイン
3.1 Android Emulator Plugin
Android emulatorの起動と停止、パッケージのインストールを担うプラグインです。Monkeyテストの実行と結果出力もサポートしています。
4 Redmineとの連携で役に立つプラグイン
それぞれ開発元が別々になっていますが、統合されるとより良いものになりそうです。
4.1 Redmine Plugin
Jenkins上に表示されるリポジトリの変更履歴にRedmineチケットへのリンクを作成します。リポジトリのコミットに記載された"refs #[チケット番号]"からRedmineチケットへのリンクを作成します。
4.2 redmine-posttask-plugin
Jenkinsジョブの終了時にRedmineへチケットを登録します。テストが失敗した場合のみ登録することも可能です。テストのFail調査をRedmineで管理する場合にチケット登録を自動化できます。
4.3 Redmine Build Notifier Plugin
RedmineのチケットにJenkinsジョブのリンクを追加します。テストのFail調査で何回もJenkinsジョブを実行する場合に有用です。
5 KVMとの連携に役立つプラグイン
5.1 Libvirt Slave Plugin
Libvirtで制御される仮想マシンの起動と停止をサポートします。Jenkinsジョブ実行時のみ仮想環境のリソースを使用するので、リソースを節約することができます。