blog.bouzuya.net

2014-07-17 hubot-merge-pr をつくった

hubot-merge-pr をつくった。 1 日 1 Hubot スクリプトの 4 作目。

指定した GitHub の Pull Request をマージしてくれる Hubot スクリプト。各ユーザーに write 権限を与えると git push -f ... を誤って実行してしまう危険性がある。戻せなくはないだろうけど、いろいろと面倒なので、マージはすべてチャット経由でやろう、全員から write 権限を奪おう、恐怖から開放されようという試み。

マージしたい Pull Request の URL を指定すると、30 秒だけ待ち、それからマージする。30 秒の待ちは指定ミス対応。

bouzuya> hubot merge-pr hitoridokusho/hibot 2
hubot> "Test1"
       hitoridokusho:master <- bouzuya:add-hubot-merge-pr
       https://github.com/hitoridokusho/hibot/pull/3
       i will start to merge after 30000 ms
       (you can stop it if you type "cancel")
hubot> Pull Request successfully merged

設定項目であるところの HUBOT_MERGE_PR_TOKEN の取得は、GitHub にログインし、Account Settings > Applications > Personal access tokens ( Generate new token ) と進み、public_repo または repo (プライベートリポジトリを含む場合) を指定して生成すれば OK 。詳しくは GitHub の Help ドキュメントを参照。

小さなスクリプトのほうが大きく幸せになれる気がする。

ちなみに細かい不満点があったので、その日のうちに 0.1.0 -> 0.2.1 にバージョンアップした。