Bitbucket Cloud を Slack と連携する

Atlassian は、ユーザーが Bitbucket の最新情報を常に把握できるようサポートします。常時提供するのは次の情報です。

  • プル リクエストの承認

  • ビルドの終了と、その成功または失敗

  • リポジトリへの新しいブランチの追加

  • その他

さらに、一部の通知では、ユーザーが通知内から直接アクションを実行できます。 

  • プル リクエストに未対応のレビュワーへの再依頼

  • 課題トラッカー、コミット、またはプル リクエストのコメントへの返信

  • 承認されたプル リクエストのマージ

  • 失敗したパイプライン ビルドの再実行

このような機能により、ユーザーの取り組みを支援します。アトラシアンでは、お客様のフィードバックに基づいてこのアプリの機能をさらに強化できるよう尽力します。

アプリのインストール

  1. 通知を設定するリポジトリを開きます。

  2. [リポジトリ設定] をクリックしてから、[Slack] > [設定] を選択します。

  3. Slack の下の [接続] ボタンをクリックします。Slack にログインしていない場合は、Slack のログイン ダイアログが開かれる場合があります。

  4. リポジトリに接続する Slack ワークスペースを選択します。

Slack に「ようこそ」メッセージが自動的に送信されます。

リポジトリで過去の Slack 連携を使用している場合

リポジトリで Slack の通知をトリガーするようにすでに設定している場合、通知の重複を防ぐため、連携を再設定することをお勧めします。Bitbucket または Slack のいずれかからこれらの通知を停止することができます。

Bitbucket で、リポジトリの Slack Webhook を削除します。

  1. [リポジトリ設定] から、[Webhook] をクリックします。

  2. Slack 用に設定した Webhook で [削除] をクリックします。

Slack から Bitbucket アプリを削除します。

  1. Slack App ディレクトリで [管理] をクリックします。

  2. Bitbucket アプリ (古いロゴのついたもの) を見つけ、アプリを削除します。

Slack チャンネルで Bitbucket リポジトリをサブスクライブする

Slack チャンネルにサブスクリプションを追加し、そのサブスクリプションでの通知を選択します。サブスクリプションは Bitbucket リポジトリを Slack チャンネルに接続し、ユーザーはそのチャンネルに通知する Bitbucket イベントを定義できます。

通知を追加または変更するには、リポジトリ管理者権限が必要です。

  1. Bitbucket にログインします。

  2. Slack に接続されているアカウントで、通知を追加するリポジトリを開きます。

  3. [リポジトリ設定] をクリックしてから、[Slack] > [設定] を選択します。

  4. 以下のいずれかを選択します。

    1. Slack に接続済みのリポジトリの場合は、[サブスクリプションを追加] をクリックします。

    2. Slack ワークスペースに初めて接続するリポジトリの場合、[接続] ボタンをクリックします。

    3. 新しいサブスクリプションを新しいワークスペースに追加する場合は、[サブスクリプションの追加] をクリックして、[新しいワークスペースの追加] を選択します。

  5. リポジトリに接続する Slack ワークスペースとチャンネルを選択します。

追加でリポジトリをサブスクライブするには、[Slack] > [設定] にアクセスするか、過去に Bitbucket に接続していた Slack ワークスペースに
/bitbucket connect <repository URL>」と入力します。

プライベート チャンネル用にサブスクリプションを作成する

既定では、プライベート チャンネルは、サブスクリプション作成ダイアログのチャンネルの選択肢には表示されません。ただし、アクセス権を持っている任意のプライベート チャンネルで /bitbucket connect <repository URL> と入力すると、そのチャンネルにサブスクリプションを作成することができます。

DM にサブスクリプションを作成する

Bitbucket Slack bot からダイレクト メッセージで個人的に通知を受け取ることもできます。DM でサブスクリプションを作成するには、Slack の左側サイドバーの [アプリ] セクションにある [Bitbucket] bot をクリックしてから、bot に「/bitbucket connect <repository URL>」というメッセージを送信します。

各サブスクリプションの通知を設定する

アプリをインストールした後、各リポジトリの設定で通知を選択できます。通知の取得先となる特定のブランチを選択して、チャンネルに必要な情報のみを提供することもできます。

  1. Slack に接続しているいずれかのリポジトリを開きます。

  2. [リポジトリ設定] をクリックします。

  3. [Slack] > [設定] を選択します。

  4. 特定のブランチを選択してブランチ パターンを設定するか、すべてのブランチで通知を取得する場合はリポジトリ全体を選択します。
    : 特定のブランチに対して特定の通知を選択すると便利です。たとえば、すべてのブランチの各コミットの通知は不要だが、本番環境用ブランチではコミットの通知が必要な場合が考えられます。

  5. 選択したブランチに対して通知を選択します。

通知用ブランチ パターン

ブランチ パターンを選択すると、ユーザーおよびワークスペースのメンバーは、特定のパターンと一致する新しいブランチすべてに関して継続的に通知を受け取ることができます。ブランチの数が多いワークフローでは特に便利です。

特定のパターンのブランチ名 ( "projectname*" など) やプレフィックス ("DEV*" や "DEV/**/rocket*" など) に対して通知を設定することができます。パターンの完全なリストについては、次のヒントをご参照ください。

ブランチ パターンのワイルドカードのヒント

glob パターンでは、アスタリスクで始まる表現は使用できません。アスタリスクで始まる表現は、引用符で囲む必要があります。

feature/*

  • feature/<any_branch> と一致します。 

  • glob パターンはスラッシュ (/) とは一致しないので、feature/<任意のブランチ>/<ブランチ> などの Git ブランチは、feature/* には一致しません。

feature/bb-123-fix-links

  • ブランチ、タグ、またはブックマークの正確な名前を指定すると、特定のブランチに対して定義されたパイプラインは、そのブランチに一致する一般的な表現をすべて上書きします。 

  • たとえば、feature/* と feature/bb-123-fix-links のパイプラインを指定したとします。feature/bb-123-fix-links ブランチへのコミットの際、Pipelines では、feature/bb-123-fix-links に対して定義されたステップを実行しますが、feature/* で定義されたステップは実行しません。

'*'

 

  • すべてのブランチ、タグ、またはブックマークと一致します。アスタリスク (*) は一重引用符で囲む必要があります。

  • この glob パターンはスラッシュ (/) とは一致しないので、feature/bb-123-fix-links などの Git ブランチは "*" には一致しません。スラッシュを一致させる必要がある場合は、"*" ではなく "**" を使用します。

 

'**'

  • すべてのブランチ、タグ、またはブックマークと照合します。feature/bb-123-fix-links などの、スラッシュ (/) を含むブランチが含まれます。** 式は引用符で囲む必要があります。

'*/feature'

  • この表現には引用符が必要です。

'main' および重複するブランチ名

  • 引用符で囲まれた名前は囲まれていない名前と同様に処理されます。たとえば Pipelines では、main と 'main' は同じブランチ名とみなされます。  

  • 上記の例の場合、Pipelines では 1 つの名前とのみ (両方ではなく、main または 'main') 照合されます。

  • bitbucket-pipelines.yml ファイルでは名前の重複を避けることをお勧めします。

通知で利用可能なアクション

現在利用可能な通知の一覧です。

セクション

通知タイプ

意味

通知アクション

リポジトリ

 

Repository 通知には一般に次の情報が含まれます。

  • 変更を加えた Bitbucket ユーザー名

  • コミットの詳細 (短い SHA およびメッセージ)

 

 

forked

リポジトリがフォークされました。フォークはリポジトリのコピーです。クローンと似ていますが、完全に別のリポジトリとしてコピーされます。

 

 

commit comment

リポジトリ内の特定のコミットにコメントが追加されました。

返信: プル リクエスト コメントに返信するダイアログを開きます。

コメントを表示: Bitbucket Cloud のコミット画面を開いてコメントの全文を表示します。

パイプライン

 

パイプライン通知には一般に次の情報が含まれます。

  • パイプライン番号 (#23)

  • パイプラインのステータス

  • ビルドされるブランチ (一部のビルド システムでのみ提供)

  • コミットの詳細 (コミット実行者、短い SHA、メッセージ)

 

 

pipeline succeed

パイプラインの正常完了

 

 

pipeline failed

パイプラインの失敗

Re-run: 失敗したパイプラインを Slack から再び開始できます。

 

pipeline fixed

過去に失敗した (または返された) パイプラインを正常に完了

 

 

デプロイメントの成功

デプロイメントが成功しました。

 

 

デプロイメントの停止

デプロイメントが停止しました。これは手動による停止か、進行中の他のデプロイメントによる自動的な一時停止可能性があります。

 

 

deployment failed

デプロイメントに失敗したか、エラーが発生しました。

 

Build

 

Build 通知には一般に次の情報が含まれます。

  • ビルド番号 (#123)

  • ビルドのステータス (合格または不合格)

  • ビルドされるブランチ (一部のビルド システムでのみ提供)

  • コミットの詳細 (コミット実行者、短い SHA、メッセージ)

 

 

build succeeded

ビルドが正常に成功しました

 

 

build failed

ビルドを完了できませんでした

 

ブランチ

 

Branch 通知には一般に次の情報が含まれます。

  • ブランチまたはリポジトリに変更をプッシュした Bitbucket ユーザー名

  • ブランチの名前

  • プッシュ内でブランチに追加されたコミットの数

  • コミットの詳細 (短い SHA およびメッセージ)

 

 

branch created

 

リポジトリに新しいブランチが追加されました

 

 

 

branch updated

コミットまたは一連のコミットがブランチに追加されました

プル リクエストの作成: Bitbucket Cloud でこのブランチのプル リクエストの作成ページを開きます。

 

branch merged

ブランチはリポジトリ内の別のブランチに正常にマージされました。

 

 

branch deleted

リポジトリからブランチが削除されました。

 

 

force push

branch updated 通知をサブスクライブしている場合、この通知が届きます。

標準のローカルからリモートの祖先の外部で変更が強制的にプッシュされました。

プル リクエストの作成: Bitbucket Cloud でこのブランチのプル リクエストの作成ページを開きます。

Pull request

 

Pull request 通知には一般に、次の情報が含まれます。

  • プル リクエスト番号

  • タイトル

  • 作成者

  • プル リクエストに割り当てられたレビュワー。レビュワー名の横に承認済みマークが付けられます。

  • ソース ブランチ (変更が追加されたブランチ)

  • ターゲット ブランチ (変更を追加するブランチ)

  • ビルド ステータス (利用可能な場合)

  • レビュー中に割り当てられたタスク (利用可能な場合)

 

 

pull request created

新しいプル リクエストが作成されました。

 

 

pull request updated

プル リクエストに、別の通知に含まれていない更新があります。一般に、ほかのユーザーが新しい変更をソース ブランチにプッシュしたタイミングとなります。

 

 

pull request approved

ワークスペースのメンバーがこのプル リクエストに承認を追加しました。

マージ: 承認 済みのプルリクエストを Slack からマージできます。

このアクションは、マージ チェックが有効化されている場合に表示されます。

現在、マージ ボタンは、すべてのマージ チェックが合格したかどうかを示します。マージを開始してマージ チェックが合格しなかった場合はエラーが表示されます。

 

pull request unapproved

ワークスペースのメンバーがこのプル リクエストの承認を削除しました。

 

 

pull request merged

プルリクエストは正常にマージされました。

 

 

pull request declined

プルリクエストが却下され、アクティブではなくなりました。

 

 

pull request comment

誰かがプル リクエストにコメントしました。

返信: プル リクエスト コメントに返信するダイアログを開きます。

コメントを表示: Bitbucket Cloud のプル リクエスト画面を開いてコメントの全文を表示します。

Tag

 

Tag 通知には一般に次の情報が含まれます。

  • Bitbucket ユーザー名

  • ユーザーの @ 名

  • タグの簡単な説明

  • コミットの詳細 (短い SHA およびメッセージ、利用可能な場合)

 

 

tag created

リポジトリに新しいタグが追加されました。

 

 

tag updated

リポジトリの既存のタグに変更が加えられました。

 

 

tag deleted

リポジトリからタグが削除されました。

 

Issue tracker

 

Issue 通知には一般に次の情報が含まれます。

  • ユーザーの @ 名

  • 課題番号

  • Bitbucket ユーザー名

  • 簡単な説明

  • 優先度、タイプ、担当などのいくつかの標準フィールド

 

 

issue created

新しい課題が作成されました。

 

 

issue updated

いずれかの課題フィールドに、フィールドの更新や追加などの変更が加えられました。

 

 

issue comment

誰かが課題にコメントを追加しました。

返信: 課題コメントに返信するダイアログを開きます。

コメントを表示: Bitbucket Cloud の課題の画面を開いてコメントの全文を表示します。

 

transitioned

この通知は、Issue updated 通知をサブスクライブしている場合に送信されます。

課題がワークスペースの別のメンバーに割り当てられました。

 

Automated responses  

 

ようこそメッセージおよび管理者メッセージには通常、次の情報が含まれます。

  • アクションに対する応答 (最初にアプリをインストールした時に表示されるようこそメッセージなど)。

 

 

Welcome (direct to administrator)

Bitbucket Cloud for Slack のインストールを完了したときに管理者に表示される最初のメッセージです。アプリをインストールした管理者へのダイレクト メッセージとして表示されます。

 

 

Welcome (open to the channel)

関連するワークスペースのすべてのユーザーに最初に表示されるメッセージです。

 

 

New channel response

アプリをチャンネルに追加したときに自動で送信されるようこそメッセージです。チャンネルの全ユーザーに表示されます。

 

 

New repository response

新しいリポジトリがチャンネルに接続されたときの自動メッセージです。チャンネルの全ユーザーに表示されます。Bitbucket Cloud のリポジトリ管理者のみがアクションを実施できます。

リポジトリ設定を開く: Bitbucket Cloud リポジトリの設定ページを開きます。

 

Unable to find repository

誰かがリポジトリへの接続を試みたが、URL が一致するリポジトリが見つからないときの自動応答です。

Bitbucket を開く: Bitbucket Cloud を開き、管理者がリポジトリを見つけて、通知が適切に設定されているかどうかを確認できるようにします。

Slack メッセージをプル リクエストにコメントとして追加する

Slack メッセージをプル リクエストへのコメントとして追加するアクションを利用して、Slack でプル リクエストにさらに簡単に対応できます。

Slack メッセージをプル リクエストに追加するには、次の手順を利用します。

1. メッセージにカーソルを合わせ、[•••] アイコンをクリックします。
2. [Attach to pull request] を選択します。
3. プル リクエストを含むリポジトリを選択します。
4. リポジトリのプル リクエストを選択します。

メッセージは、選択したプル リクエストにコメントとして表示され、メッセージを追加したユーザーや作成者も表示されます。コメントのコンテキストを確認する場合、メッセージ リンクをクリックすると Slack の会話に戻ることができます。

Bitbucket Cloud for Slack アプリ用のスラッシュ コマンド

アプリでは複数のスラッシュ コマンドを使用できます。

コマンド

意味または動作

必要な権限

/bitbucket

Bitbucket Cloud 接続とサブスクリプションの管理

 

/bitbucket help

アプリで利用可能なコマンドを一覧表示

 

/bitbucket connect <repository url>

リポジトリをサブスクライブして通知を受信

 

/bitbucket login

Bitbucket Cloud ワークスペースを Slack ワークスペースにリンク

 

/bitbucket logout

現在のアカウントからログアウトして他のユーザーとしてログイン

 

/bitbucket whoami

自分がワークスペース内で使用している Bitbucket ユーザーの確認

 

/bitbucket feedback

アプリについてのフィードバックを送信

 

/bitbucket list

ワークスペースに接続しているすべてのリポジトリの一覧表示

 

その他のヘルプ