すえひろがりっっっっ! このページをアンテナに追加 RSSフィード

2017-08-28

Redmine Bitbucket Hook プラグインを fork して最新の Redmine で使えるようにした

Bitbucket に push したコミットRedmineリポジトリに取り込むプラグイン redmine_bitbucketgit_hook が Rails4 ベースの Redmine と最新の Bitbucket に対応していなかったので対応した。

リポジトリ

https://github.com/suer/redmine_bitbucketgit_hook

変更点

Rails 4 に対応

Rails 4 ベースの Redmine で動くように変更した。

Bitbucket の Webhook 設定に対応

Bitbucket では従来 Services という設定で他のアプリとの連携を行っていたが、ある時期から Webhooks という設定に変更になった。

この新しい設定に対応した。

git コマンドを Redmine の設定から取得できるように変更

もとの redmine_bitbucketgit_hook では git のコマンドにパスが通っている必要があった。

この修正では config/configuration.yml で git のパスが設定されている場合に、その設定を使うように変更した。

インストール

1. 以下を実行

$ cd $RAILS_ROOT/plugins
$ git clone https://github.com/suer/redmine_bitbucketgit_hook.git
$ bundle install

上記を実行して Redmine再起動

使い方

管理 > プラグイン > redmine_bitbucketgit_hook の「設定」で Bitbucket から clone する先のディレクトリを指定する。(1度だけ)

f:id:suer:20170829005407p:image

リポジトリの設定で Bitbucketリポジトリ URL を指定する。

f:id:suer:20170829005402p:image

作成ボタンをクリックすると、またリポジトリの設定画面が表示されるが、ローカルのディレクトリパスに変換されているので、もう一度このまま作成ボタンをクリックする。

f:id:suer:20170829005357p:image

Bitbucket 側では Webhooks の設定を行う。

URL には https://{RedmineRoot}/bitbucketgit_hook を指定する

f:id:suer:20170829005353p:image

以上の設定により、

  1. Bitbucket に push
  2. Bitbucket が https://{RedmineRoot}/bitbucketgit_hook にアクセス
  3. RedmineBitbucket からもらった JSON を見て Bitbucket から fetch

という動きとなり、自動的に同期される。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/suer/20170828/redmine_bitbucketgit_hook