Redmine Bitbucket Hook プラグインを fork して最新の Redmine で使えるようにした
Bitbucket に push したコミットを Redmine のリポジトリに取り込むプラグイン redmine_bitbucketgit_hook が Rails4 ベースの Redmine と最新の Bitbucket に対応していなかったので対応した。
変更点
Bitbucket の Webhook 設定に対応
Bitbucket では従来 Services という設定で他のアプリとの連携を行っていたが、ある時期から Webhooks という設定に変更になった。
この新しい設定に対応した。
インストール
1. 以下を実行
$ cd $RAILS_ROOT/plugins $ git clone https://github.com/suer/redmine_bitbucketgit_hook.git $ bundle install
上記を実行して Redmine の再起動
使い方
管理 > プラグイン > redmine_bitbucketgit_hook の「設定」で Bitbucket から clone する先のディレクトリを指定する。(1度だけ)
リポジトリの設定で Bitbucket のリポジトリ URL を指定する。
作成ボタンをクリックすると、またリポジトリの設定画面が表示されるが、ローカルのディレクトリパスに変換されているので、もう一度このまま作成ボタンをクリックする。
Bitbucket 側では Webhooks の設定を行う。
URL には https://{Redmine の Root}/bitbucketgit_hook を指定する
以上の設定により、
- Bitbucket に push
- Bitbucket が https://{Redmine の Root}/bitbucketgit_hook にアクセス
- Redmine が Bitbucket からもらった JSON を見て Bitbucket から fetch
という動きとなり、自動的に同期される。