Jenkins Backlogプラグインをリリースしました(ユーザ認証対応)
結構長めの夏休みがあったにも関わらず、夏休み前に買ったiPhone版FFTでラムザを無駄に暗黒騎士にしてクリアしたり、子供が40℃弱の熱出してけどお盆真っ最中の日曜日で近くの病院どこもやってなくて救急病院に連れていったり、最近職場まで20Km近く自転車漕いでるけどブレーキの効きが悪くて結構心臓に悪かったりしてたので自転車の修理に行ってついでに自転車保険に入ってきたり、あーそろそろ次回のJenkins勉強会の告知とかせんといけんなーとか思いつつ、そんなこんなしてるうちに気がつけば夏休みが終わって家族とコンビニの店員と病院の先生と自転車屋さんとしか話してなかったりなikikkoです、こんにちは。
このままだと↓の @ussy00 カイジみたく人間のクズに成り下がりかねなかったので、夏休みの自由課題ということでJenkins Backlogプラグインを拡張してみました。今回の拡張で、Backlogのユーザ情報でJenkinsにログインできるように。
Jenkinsのセキュリティ関連のプラグインの中に、Script Security Realmというものがあります。このプラグインはJenkinsの認証時に適当なスクリプトをフックできるというものですが、これの中見てるとBacklogプラグインにも認証周りの実装するのはそこまで難しくないかなと思ったのがそもそもの発端です。
まぁ、Backlogプラグインのユーザは数えるほどしかいないだろうしみんなあまり興味ないだろうから、中身のことはとりあえず置いといて。
Jenkinsのセキュリティの概念については、id:tyuki39 さんのHudsonの操作権限をユーザ/グループ/ロール別に制御する - ふぞろいのGENGOたちがよくまとまっています。ただ、自分の使い方としてはそこまでガッチガチに縛るやり方ではなく、メンバーには基本的に自由に触ってもらっています。ですが、何かあったときに誰が何をしたのかをトレースしたいなというのは前から思っていたところでした。
そんな私のお気に入りの設定は、「権限管理」で「ログイン済みユーザーに許可」です。ヘルプメッセージを見てもらえば分かるかと思いますが、ビルド結果の参照などにはログインする必要がなく、手動ビルドしたい場合や何か設定に変更を加えたい場合に初めてユーザ認証が必要になります。
これで、メンバーの手間をできるだけ減らしつつ、トレーサビリティも確保できるようになります。Jenkinsのジョブ設定の履歴を追えるJob Config Historyとの相性もいい感じです。
ところでうちの子ども、マルモリ体操を流すと熱があるにも関わらずはしゃぎだすのですが、自分の体調の悪さを分かっていないようですぐにフラフラになります。。。