前回 Cloud BuildでGAE/Goデプロイ by Slack vol.1
SlackとBitBucketの連携
Cloud BuildでGAE/Goデプロイ by Slack vol.2ということで、
今回はSlackとBitBucketとCloud Source Repositoryを連携する設定を行いたいと思います。
(BitBucketのアカウント、およびリポジトリはすでに存在する前提で話を進めます)
SlackへBitBucket Appの登録
SlackへのAppの登録および、連携設定は、
[blogcard url=”https://qiita.com/mako2kano/items/5fe40835655d80190d20”]
の通りに進めていけば、特に困ることはないかと思います。
BitBucketとCloud Source Repositoriesのミラーリング設定
さて、BitBucketとCloud Source Repositoriesのミラーリング設定ですが、
こちらも難しい設定はありません。
まず、Cloud Source Repositories上に、連携するためのレポジトリを作成します。
GCPのコンソールより、


開始ボタンを押すと、


リポジトリ名の入力画面が出てくるので、任意のリポジトリ名を入力して作成リンクを押下します。


この中から、
GitHub または BitBucket からの自動ミラーリングを選択します。


ホスティングサービスからBitBucketを選択すると、認証許可画面が出てくるので、許可します。
そうすると、


ミラーミングしたいリポジトリを選択します。(今回は1個のみ)


BitBucketのリポジトリと同じ内容が表示されれば完了です!
ここまで設定が終われば、
BitBucketでプルリクエストを作成した時に


こんなメッセージが連携したSlackチャネルに届くはずです。
この状態でReviewボタンを押せば、BitBucketの画面に飛んでソースの変更を確認することができます。


左の承認ボタンを押すと、


こんなメッセージがSlackのチャンネルに届きます。
そこで、Mergeボタンを押せば、以下の画面が出てきます。
(なお、BitBucketのリポジトリ上にアカウントを持っていないSlackユーザがクリックしたとしても、マージはできませんので、勝手にマージされたり、だれがマージしたかがわからなくなることはありません)


Mergeを押せば、晴れてマージ完了となります。


マージ完了のメッセージも届きます。
終わりに
SlackとBitBucket、そしてCloud Source Repositoryの連携が簡単にできることがおわかりいただけたのではないでしょうか。
例えば、GitLabなどでもSlackに通知を連携する機能はありますが、
Slackのボタンでマージ処理を行うなどはできません。
その点でもSlackとBitBucketを連携するメリットはあるかと思います。
さて、次回はmasterブランチにマージした後にCloud BuildでGAE/Goのアプリをデプロイする設定を行いたいと思います。