Bitbucket＋Trello＋Slackを連携してカード作ったり通知したり

プロジェクト管理をどうやろうかなと悩んでいて、今使っているBitbucket、Trello、Slackで上手くやれないかなと思い、調査して設定してみました。

### 前提条件
***
- Bitbucketでリポジトリを用意している
- TrelloでBoard、Listを用意している
- Slackで通知用のチャンネルを用意している

### やりたいこと
***
① Bitbucketでissue（プロジェクト上の細かいタスク）を作成すると、TrelloのListにカードが追加される（カードが追加されると、Slackに通知する）
② Bitbucketのissueを解決（完了）すると、Slackに通知する
③ BitbucketでコミットしたりPR出したりすると、Slackに通知する
④ Trelloでカードを別のListに移動すると、Slackに移動する

### ① Bitbucketでissueを作成すると、TrelloのListにカードが追加される（カードが追加されると、Slackに通知する）
***
#### **Zapierの設定**

まずはZapierに登録します。
この辺はちょちょいと。
無料って素敵。

[https://zapier.com/](https://zapier.com/)

BitbucketとTrelloを連携していきます。

[https://zapier.com/zapbook/bitbucket/trello/](https://zapier.com/zapbook/bitbucket/trello/)

![zapier1.png](https://qiita-image-store.s3.amazonaws.com/0/16606/fe3dc935-3427-1ffe-af9e-1c2aa1c027a7.png)
赤枠の「Use this Zap」をクリック。

![zapier2.png](https://qiita-image-store.s3.amazonaws.com/0/16606/c63dca93-a511-fff8-9730-1abcfae2a25f.png)
BitBucketは「New Issue」、Trelloは「Create Card」を選択。

![zapier3.png](https://qiita-image-store.s3.amazonaws.com/0/16606/e60d0662-6e0a-8076-9f5d-f2e1dd008513.png)
各アカウントを指定して、「Test this Account」をクリック。
アカウントチェックが走ります。
※アカウント指定欄に出現する「＋Connect a different BitBucket Account」をクリックすることでアカウントを入力できます。
※アカウントは、【（ユーザー名やメールアドレス、チーム名などの）アカウント名's BitBucket account】と指定してください。

![zapier4.png](https://qiita-image-store.s3.amazonaws.com/0/16606/0a94d06e-f728-714c-6343-68b19ed01029.png)
Bitbucketのオーナー（ユーザー名かチーム名）、対象リポジトリを指定します。
「＋Add a custom filter」はとりあえずスルーで。

![zapier5.png](https://qiita-image-store.s3.amazonaws.com/0/16606/265e5890-c3a1-03ef-d28b-1d811f440418.png)
Bitbucketで作成したissueをTrelloのカードとして追加するための細かい設定です。

・「Board」
TrelloのBoardを選択します。
・「List」
TrelloのListを選択します。
上記2つの設定で、どのBoardのどのListにカードを追加するか決めます。
・「Name」
Trelloのカードが作成されるときのタイトルのフォーマットです。
上記画像では例として【[# Local ID] [Metadata Kind] Title】と指定しています。
これは、Bitbucketで作成したissueと紐付いていて、「Local Id」がissue番号、「Metadata Kind」がissueの種類（task/bugなど）、「Title」がissueのタイトルとなっています。
・「Description」
Trelloのカードが作成されるときの説明文のフォーマットです。
上記画像では例として【Content】と指定しています。
これは、Bitbucketで作成したissueの説明欄の部分と紐付いています。
右側にある「Insert（Bitbucketアイコン）fields」でカスタマイズできるので、お好きなように。
・「Label」
Trello上のどのラベルを付与するかのデフォルト値。
・「Member」
Trello上のどのメンバーを担当者にするかのデフォルト値。
・「Due Date」
カードの期限をいつにするかのデフォルト値。
…などなど。

最後に設定名（なんでもいい）を記入して、「Turn Zap on」をクリックして設定完了。
これで、Bitbucketで作成したissueがTrelloにカードとして追加されるようになります。
便利！

#### **通知設定**

Trelloにカードが追加されたら、Slackに通知するようにします。

![slack1.png](https://qiita-image-store.s3.amazonaws.com/0/16606/af043ad0-8633-e63f-325b-e2d49e3c7067.png)
Slackで「Integrations」のページに飛びます。
Trelloを検索して、「View」をクリックします。
（この辺でTrelloのアカウント認証があったような…）

![slack2.png](https://qiita-image-store.s3.amazonaws.com/0/16606/e816baa1-fac5-f7c5-72b2-cfc6cd282752.png)
通知先のチャンネル名を指定して、「Add Trello Integration」をクリックします。

![slack3.png](https://qiita-image-store.s3.amazonaws.com/0/16606/70863d62-5e7d-5f66-34ad-e89f3188f445.png)
・「Trello Board」
通知元のBoard名を指定します。
・「Notifications」
Trelloで何をしたときにSlackに通知したいかを選択します。
よしなに。
・「Post to Channel」
Slackの通知先のチャンネル名。
・「Descriptive Label」
省略。
・「Customize Name」
通知したとき、Slackのチャンネル内で表示される名前を決められます。
デフォルトでは「Trello」になっているかなと。
・「Customize Icon」
通知したとき、Slackのチャンネル内で表示されるアイコンを決められます。
デフォルトではTrelloのアイコン。

「Save Integration」をクリックして設定終了。
これで、Trelloにカードが追加されたらSlackに通知が！
てことは、Bitbucketでissue作ったら、自動的にTrelloにカードが作られ、Slackにも通知がいくということ！
素敵ですね。

一旦ここまでにします。
長くなりますね…笑
続きは、近日中に更新していきます。