slack Advent Calenderの18日目です
Adventカレンダー初参加です。ちょうど今日の欄が開いていたので参加させてもらいます。よろしくお願いします。
つい最近友達とアプリケーション開発で遊ぼうとなりまして、メッセージングはslack、遊びなのでソース管理は無料でプライベートリポジトリが使えるbitbucketを使用しています。
最近インターンさせていただいた会社がgithubの通知をガンガンslackに投げていました。これはbitbucketでもできるのでは?となり試してみました。思った以上に簡単だったので記事にしたいと思った次第です。
目次
- slack側の設定
- bitbucket側の設定
slack側の設定
AppDirectoryからbitbucketを追加
つい最近App Directoryなるものができまして
そちらからbitbucketを探し出します。
検索窓に「bitbucket」と入力しbitbucketを選択します。
するとアプリの詳細画面がでてきますので、installをクリック。
Appの設定
遷移した先のページでbitbucketの通知を配信するslackのchannelを選択します。
私は#developとか新しく作成してそこに作成したりしました。なんかそれっぽかったので。
選択したらその下のボタンを選択します。
これでslack側の設定は完了です。遷移した先のページは、次のbitbucketに設定する方法が書かれています。これに従って設定していきます。
その説明の下に、WEBHOOK URLが記載されています。これはこのあとのbitbucketの設定で使用します。
bitbucket側の設定
bitbucket側の設定を行います。
基本的には操作を通知したいレポジトリにWEBHOOKURLを設定する感じです。
webhook設定ページに移動
まず、操作を通知したいレポジトリに移動し「Settings」のページに移動します。
遷移先のメニューの中にある「Webhooks」を選択します。
Webhookの設定
遷移したページに表示された項目を埋めていきます。
先ほどのslackで作成したWebhookURLはURLの部分にペーストします。
Triggersの部分はChoose ... を選択するとそれぞれのトリガーが表示されるので必要そうなものだけ選択します(私たちはあんまり頻度が高くなさそうなので、全部選択したいました。)以前はどうもpushのみしか対応していなかったようなんですが、かなり多くのフックがあるのでわーいって感じですね。
以上でbitbucketの設定も終了です。さきほどNo hookとなっている部分に今設定したものが追加されると思います。
slackで作ったWebhookURLは、他のレポジトリにも同様の設定をすることで設定可能です。
実際の通知
実際に設定したレポジトリにpushをしてみると以下のようにslackに通知することが確認できました。
大成功ですねー。
最後に
自前でやると結構ちゃんとスクリプト書かなければ行けなかったりしますが、slackが用意しているものを利用するとスクリプトが掛けない人でも簡単にこういうものが作れてしまったりします。
slackへのpush通知は、リポジトリのWatcherにはメールなり通知なりがbitbucketで見れますが、slackで飛ばすことで普段の生活の流れで見れたり開発には関わってないけどslackの中にいる人に様子の一端を伝えられて良さそうです(もしかしたら一長一短ですが)。いやほんとう簡単。AppDirectoryも相当数揃ったから本当すごい楽だなーslackかわいいよslack。
以上で初Adbvent Calenderをおえたいと思いますーありがとうございます。
明日は Kinoppyd さんだそうですー。