Jenkinsのビルド結果がエラーになった際に、AWSのSNSを利用した通知をしてくれるAmazon SNS Build NotifierというPluginがある。
ただ、このPluginの実装だとビルドエラーの状態からビルドが成功に戻った場合は通知してくれない。あくまでビルド結果がFAILUREかUNSTABLEの場合のみの通知になる。通常のEmail通知と同様に復帰した場合も通知して欲しいので、Amazon SNS Build Notifier Pluginをカスタマイズしてみた。
カスタマイズの内容は
- ビルドがSUCCESSになった際に、その前のビルド結果がSUCCESS以外であった場合もメールを通知する。
- JDK 7でビルドできるようにpom.xmlのorg.jenkins-ci.pluginsのバージョンアップ
- AWSのSNSのエンドポイントを指定できるように設定値追加。
デフォのregion以外のSNSのTopicARNを指定してるとSNSのpublish時に404が帰ってきて地味にハマった。
という簡単なもの。Plugin自体も1クラスだけなのでカスタマイズは簡単。
改修したPluginは→ azuchi/jenkins-snsnotify-plugin · GitHub
それにしても、Githubからforkするだけで簡単にカスタマイズできるって環境が便利ね〜。