2014年9月8日月曜日

Redmineのチケット更新をURLへ通知してくれるプラグイン2種の比較 またはハドソンの思い出

Redmineで何かしたら他に何か起こってほしいという場合に、最もほしい機能は、RedmineからオレオレURL(何かのムーヴメントを起こす)へのプッシュ通知です。
RedmineのRSSは、次の理由により不便です:

  • チケットごとの細かい履歴はいちいちそのRSSを見に行かないといけなかったり、
  • ステータス更新は履歴画面のHTMLそのまんまだったりしてスクレイピングみたいなことしないといけなかったり。

Redmineのチケット更新をURLへ通知してくれるプラグインをネットでさがすと、ありがたいことに、先人様方が作ってくださったものが、なんと2つも見つかります。
古い順に並べると次のとおりです:

どちらもJSONで送ってくれますが、けっこう違いがあります:

◎updates_notifier
  • よく見ると、通知してくれるのはチケットの更新だけで、チケットの新規作成は通知してくれない
  • バルク編集をキャッチすることへのこだわりがあり、そのために本体コードにフックを追加までしている。(このパッチはプルされておらず、現在、バルク編集が通常のフックでひっかからないのかどうかは不明)
  • 2011年に作られた。現行バージョンのRedmineでは動かないというコメントが付いている(試してないが、上記パッチのせいのような気もする)
  • JSONの作成がかなりつまみ食い的で、作者が特定の案件のためにほしい情報だけ入れてますというのが丸わかりチケットIDさえあればあとはREST APIで取れるでしょという姿勢か?

◎Redmine WebHook Plugin
  • チケットの更新だけでなく、新規作成も通知してくれる
  • 今年2月に作られた。Redmine 2.4対応
  • ラッパがいっぱいあって、ものすごく丁寧に実直にJSONを作っているので、まんま汎用できる

ということで、たいていの用途については、どう考えても後者に軍配があがります。

実は、僕のグーグルスキルはものすごく低いらしく、前者はかなり前から見つけていたのですが、後者を見つけたのはさっきなのです。しかもGoogleからではなく、redmine save hookでググって出てきた記事からブログ内人気記事リンクをたどってです。
もっとも、前者を最初に見つけたとき、後者はタイミング的にまだネット上に存在していなかったとおもいますが。

◎RedmineとIRCの連携

なお、Redmineのチケットとかの更新をIRCへ通知してくれるRedmineプラグインもあります:
そのメッセージをHubotなりIRCbot Consoleなりのスクリプトで拾ってオレオレURL(ステキな働きをしてくれる)へ伝えるというピタゴラ装置的方法も使えなくはないでしょう。

もちろん、Hubotは自分の配下のURLをスクリプトにlistenさせることができますので、Redmine WebHook PluginでHubotスクリプトを直接叩いて、そいつにIRCへ任意の形で通知させる(かつ、必要であれば任意の働きをさせる)ほうが、ストレートフォワードだとは思いますが。(IRCbot ConsoleはURLで受けたメッセージをそのままIRCに流すだけで、スクリプトをかますことはできません)

また、逆にIRCでのコマンド入力によりRedmineのチケット登録とか更新とか閲覧をしたいならば、
IRC -> Hubot -> Redmine REST API
というごく自然なルートでこれを実現するスクリプトがHubotに付いています:
これを拡張やら改造やらして、Redmineをいじるだけでなく何やら怪しい動きをさせることは容易でしょう。

◎Huにまつわるエトセトラ

余談ですが、Hubot(ヒューボット)という名前は、13歳の誕生日に父上に買っていただいたSHARP初代X1のHu-BASIC(ヒューベーシック)を思い出させて、ものすごくノスタルジックです。
Hu-BASICは僕が生まれて初めて使い込んだプログラミング言語でした。
それ以前に使っていたN88BASICは、平日に学校で紙の上でコーディングし、週末にバス電車1時間乗り継いで横浜駅前のNECのショールームまで行ってそれを打ち込んで走らすことしかできませんでしたので、使い込むという域にはほど遠かったからです。
アセンブリを学んだあとは、Hu-BASICを逆アセンブリして解析までしました。そこここで効率化のための工夫がなされており、すごく勉強になったのを覚えています。
Hu-BASICのHuは言うまでもなく、制作・発売元であるハドソンのHuですが、同社がX1用に出した『サラダの国のトマト姫』も遊び倒したものです。
長じては、スーファミの『スーパー桃太郎電鉄III』も、1年間毎週PumpKinの長野放送出演を観覧しに行く前の晩に友人宅で遊び倒したものです。
さらに長じては(笑)、ハドソン夢まつりを全国各地回って、でっかい三脚とビデオカメラでステージを撮りまくったり、アイドルミニコミとして桃太郎とかハニーちゃんとかスバルにインタビューしたりしていたら、ある日終演後に工藤社長から突然声かけられたのも良い思い出です。

0 件のコメント:

コメントを投稿