プロ生ちゃん(CV 上坂すみれ)に Jenkins のジョブ結果を通知してもらう方法

Development,Pronama-chanChrome,Jenkins,WebSocket

プロ生ちゃん(暮井 慧・CV 上坂すみれ)が Jenkins のジョブ結果を通知する Chrome 拡張と Windows クライアントを公開しました。また、Jenkins の見た目の変更も紹介します。OSC 2014 Nagoya で展示していた内容です。

pronama-chan-jenkins-bg

暮井 慧ボイス には、Jenkins に使えるボイスもあるんですよ!(No. B305~B307)

ジョブ結果の通知 概要

pronama-chan-jenkins

通知は、Jenkins の Websocket Plugin を利用して、Chrome 拡張の mallowlabs/jenkins-notifier-for-chrome と Windows クライアントの tnakamura/WebSocketNotifierClient を修正して行いました。

Chrome 拡張・Windows クライアントどちらの場合も、ジョブのビルド後の処理に「WebSocket Notifier」を追加して行います。

参考(元のプログラムの詳細はこちらで)

Chrome 拡張「Pronama-chan Jenkins Notifier for Chrome™」

プロ生ちゃん Jenkins 通知

Chrome Web Store で公開しました。

元の Jenkins Notifier for Chrome™ から下記の変更を主に行っています。

  • webkitNotifications から chrome.notifications に変更(使えなくなっていたので)
  • MP3 ファイルを HTML5 Audio により再生

Windows クライアント「Pronama-chan WebSocketNotifierClient」

プロ生ちゃん Jenkins 通知

とりあえず音声で通知できるレベルにしたコードを公開します。

元の WebSocketNotifierClient から下記の変更を主に行っています。

  • 成功・失敗・不安定 以外の通知が来た場合、失敗扱いになっていたので、中断の判定を追加して、成功・失敗・不安定・中断の通知のみ処理するように変更
  • Wave ファイルの再生
  • おそらく使用ライブラリを最新のものを参照したため EventHandler の型が一致していないエラーを修正

見た目の変更

プロ生ちゃん Jenkins

さらに、Jenkis のページの見た目を変更しましょう! Jenkins の Simple Theme Plugin を利用して追加のスタイルシートを指定し、背景画像を変更しています。favicon は直接ファイルを書き換えました。


body, table, form, input, td, th, p, textarea, select {
font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3",
"Hiragino Kaku Gothic Pro","MS Pゴシック", "MS P Gothic","Osaka",
Verdana,Arial, Helvetica, sans-serif;
}
#main-table {
background-image: url(/images/pronama-chan.png) !important;
}
td.pane-header {
background-color: rgba(240,240,240,0.5);
}

view raw

theme.css

hosted with ❤ by GitHub

イラストは、pronama-chan.png を利用できます。favicon.ico もあります(小さすぎてよくわかりませんが)。

参考

Jenkins の使い方 参考サイト

実は、はじめて Jenkins を使いました。参考になったサイトを紹介します。Jenkins のインストール時刻が、7/3 23時。OSC の展示開始が 7/5 10時(自宅出発は5時)。1日もあれば、プロ生ちゃん Jenkins が可能。そう無職ならね。

Jenkins のジョブ結果に Aborted があることを知らなかったので、暮井 慧ボイスにピタッと対応するものがないです。今回は「おっと!」を使っています。

.NET 開発者のための Jenkins 入門

少し古いけど MSBuild の設定からメール送信までここを見てしました。今では MSBuild プラグインは、公式プラグインからインストールできます。

デフォルトでは、メールの差出人のアドレスが存在しないドメインのため STMP サーバーではじかれてました。アドレスを変更するには「Jenkins の位置」から。

Jenkinsの位置

はじめはメール通知プラグインのコード修正を考えていましたが、ソースコードやプラグイン開発の情報を見てやめました。

Windows7 に、一人で使うための Jenkins を入れてみた

デフォルトで使われるポート8080は、他のアプリと重なるために変更。 「C:Jenkinsjenkins.xml」内の、「–httpPort=8080」を変更した。

ポートの変更方法。C:Program Files (x86) にインストールした場合は、管理者権限で実行するメモ帳などで変更しないとダメ。

Jenkins を再起動する方法

safeRestartというパスにアクセスすると再起動できる

favicon など直接変更したときに再起動。よく見たら「メモ的な思考的な」の方にも書いてました。

余談

今回の内容に多大に関係している mzp さんに OSC Nagoya でお会いできました(参加されていること全然知らなかった)。プロ生ちゃん Jenkins の写真を撮影していました。

プロ生ちゃん Jenkins ネタは、ごはん代と引き換えに @kyubuns にふってたのに全然作ってくれなかった。

今の暮井 慧ボイスの公開は有限ですので、ずっと使いたい方は、今のうちにダウンロードしておきましょう。