こんにちは、開発担当の松本です。
前回のプラグイン紹介記事がわりと反響があったようですので、今回も便利プラグインをいくつか紹介します。
好みのテーマに変更できる: Simple Theme Plugin
左下のいつも出ている執事の顔が気になってくる人は多いと思います。
そんなときにはこのプラグイン。CSS と JavaScript を挿し込むだけの単純なプラグインながらその効果は絶大です。
利用するには、プラグイン導入後に Jenkins の管理 → システムの設定 → theme に追加する CSS と JS を指定するだけです。
プラグインのページにはサンプルのCSSファイルも用意されています。
とりあえず、執事の顔を消したいだけなら CSS に次のように記述すればよいです。
#main-table { background-image: none !important; }
ページの左上のロゴ画像を変更するには、id も class も指定されていないので JavaScript を利用するしかなさそうです。
てきとうに対応するなら次のような JavaScript で次のように書くとよいです。
document.addEventListener('DOMContentLoaded', function(){ document.getElementsBySelector('[alt="title"]')[0].src = 'http://127.0.0.1:8080/userContent/theme/title.png'; }, false);
JavaScript と CSS で背景が黒いテーマにするためにいじってみたら次のようになりました。拡張によってはスタイルが埋め込みになっていたり、グラフやいくつかのアイコンは透過 PNG ではなかったりするので、そのあたりまで対応しようとするとかなりの労力が必要になりそうです。
見た目を自分好みにカスタマイズしたいときや、自分の JavaScript を入れて便利にしたい人はどうぞ。
ビルドのトリガとなった要因をバッジで簡単に確認できるようになる: Build Trigger Badge
各ビルドにトリガとなった要因をバッジで表示してくれるプラグインです。
ユーザの手動から、上流から、SCM のポーリングから、など要因が一目でわかるようになります。
導入後は設定不要で、それ以降のビルドの要因となるものをバッジで表示してくれるようになります。
なお、一番上のスパナバッジはこのプラグインによるものではなくて、JobConfigHistory によるもので、このビルドから設定が変更されていることを示しています。
JobConfigHistory のこの機能は今年出た Version 2.1 からのものですのでアップデートしていない方はぜひ試してみてください。
コンソール出力に時間を表示する: Timestamper
コンソール出力のページのログメッセージに、出力されたときの時間を表示できるようにするプラグインです。
利用するにはプラグイン導入後に、プロジェクトの設定ページのビルド環境セクションに追加されている次の項目をチェックするだけです。
すると、それ以降のビルド実行でタイムスタンプが表示されるようになります。
また、コンソール出力のページに設定項目が追加され、ビルド実行開始からの経過時間を表示させるようにすることもできます。
ビルド中の細かい時間経過を知りたいときにどうぞ。
各ビルド結果のサイドバーにリンクを作成する: AnchorChain
ビルド結果のサイドバーにリンクを追加することができるプラグイン。
これを使うとワークスペースや成果物フォルダの深くに埋もれているファイルへ楽にアクセスできるようになります。
利用するにはプラグイン導入後に、プロジェクトの設定 → ビルド後の処理に追加されている Anchor Chain でファイルを指定するだけです。
ファイル自体は1行1エントリのタブ区切りで、リンク名、リンク先、アイコンの順番に指定します。
Go to WS /job/Sample/ws/very/deep/directory/foo/ /userContent/ws.png Get exec ./artifact/very/deep/directory/foo/*zip*/foo.zip /userContent/save.png
リンク先は単純に A タグの属性 href に埋まるだけですので、
例えばプロジェクト Sample のジョブ #58 での URL が http://jenkins.example.com/job/Sample/58/ だとすると、上の例の
- 「Go to WS」なら
http://jenkins.example.com/job/Sample/ws/very/deep/directory/foo/
- 「Get exec」なら
http://jenkins.example.com/job/Sample/58/artifact/very/deep/directory/foo/*zip*/foo.zip
へのリンクになります。
なお、リンク名には日本語が使えないようなので注意してください。
各プロジェクトの設定を一括変更できる: Configuration Slicing
SCM のポーリング実行タイミングやシェルスクリプトなど、同じ設定のものを一括で変更したいことがあります。そんなときにはこのプラグイン。同じプロジェクト設定を一括で変更できるようにするプラグインです。
次のスクリーンショットは SCM ポーリングの設定を一括変更しようとした例で、左側に設定の値、右側にプロジェクト名が表示されています。
これを利用するには、Jenkins → Jenkinsの管理 → Configuration Slicing から行くことができます。
一括変更可能なものには、
- Windows バッチ/シェル/ Python スクリプト
- ビルドパラメータ
- SCM のポーリング時間
- カスタムワークスペース
などがあり、それ以外にもたくさんあります。一覧はプラグインのページにありますので導入を検討されている方は一度チェックしてみてください。
コンソール出力に表示されるパスワードをマスクする: Mask Passwords
シェルスクリプトなどでパスワードを平文のまま埋め込むことに気が引けている方向けのプラグインです。
設定したパスワードを *
で見えないようにします。
利用法するには、プラグイン導入後にプロジェクト設定 → ビルド環境 → Mask passwords (and enable global passwords) をチェックし、
変数名とそれに割り当てるパスワードを設定します。
そうすると、普通のビルドパラメータと同様に、環境変数として扱うことができるようになります。
指定した URL の内容変更をトリガにできる: URLTrigger
指定した URL をポーリングして、内容が前と違うならビルドを実行させたりできるようにするプラグインです。
利用法するには、プラグイン導入後にプロジェクト設定 → ビルド・トリガ → [URLTrigger] – Poll with a URL をチェックします。
そして、監視対象の URL、監視の方法、監視のスケジュールを指定するだけです。
例えば、コンテンツの変更を検知したいなら Inspect URL content で Monitor a change of the content を指定します。
これ以外にも、HTTP レスポンスステータスコードや JSON ファイルの特定のノードに変更があったかどうかからなどでもトリガにすることができます。
複数 SCM プラグインを SCM ジョブで実行できる: Multiple SCMs
ひとつのプロジェクトで複数の SCM を同時に利用したい場合に利用するプラグインです。
デフォルトの Jenkins ではひとつの SCM しか選択できませんので、そういうときはこのプラグイン。
利用法するには、プラグイン導入後にプロジェクト設定 → ソースコード管理システムで Multiple SCMs を選んで、add SCM で必要な SCM を追加していくだけです。
なお、手元の環境では Clone Workspace SCM と Bazaar は利用するとビルド時にエラーになりました。
git プラグインは複数のリポジトリを指定できますので、git のみを利用する場合には必要のないプラグインですが、他のプラグインと組み合わせたいときは利用するとよいでしょう。
おわりに
プラグインは日々、変更や追加されていますのでたまにチェックするとより幸せになれるかもしれません。
Jenkins のプラグイン情報をツイートする bot もありますので必要な方はチェックしてみてください。
そして、お勧めのプラグインがあればぜひ紹介してください。
ソーシャルアカウント
フェンリルのオフィシャル Twitter アカウントでは、フェンリルプロダクトの最新情報などをつぶやいています。よろしければフォローしてください!