Slack を使用して Azure DevOps のサービス フックを作成する
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
この記事では、完成したビルド、コードの変更、プル要求、リリース、作業項目の変更など、Azure DevOps 組織のイベントに応答して Slack にメッセージを投稿する方法について説明します。
Note
Azure DevOps Services の場合は、Slack と統合する機能を提供する次の一連のアプリを使用することをお勧めします。
Slack 用 Azure Boards アプリ
Slack 用 Azure Boards アプリは、Slack チャネルから作業項目を簡単に作成および監視するのに役立ちます。 スラッシュ コマンドを使用して作業項目を作成したり、メッセージ アクションを使用してチャネル内の会話を作業項目に変換したりできます。 また、作業項目が作成または更新されるたびにチャネルで通知を受け取るようにサブスクリプションを設定および管理することもできます。
Slack 用 Azure Pipelines アプリ
Slack 用 Azure Pipelines アプリは、パイプライン内のイベントを簡単に監視するのに役立ちます。 完成したビルド、リリース、保留中の承認などのサブスクリプションをアプリから設定および管理し、それらのチャネルでこれらのイベントの通知を取得できます。 チャネルからのリリースデプロイを承認することもできます。
Slack 用 Azure Repos アプリ
Slack 用 Azure Repos アプリは、リポジトリ内のイベントを簡単に監視するのに役立ちます。 コード コミット、PR の作成と更新などのサブスクリプションを設定および管理し、それらのチャネルでこれらのイベントの通知を取得できます。
前提条件
Slack の ドキュメント「受信 Webhook を使用してメッセージを送信する」を参照して、Web フックを使用して Slack チャネルに情報をプッシュするプロセスを理解してください。
Slack でカスタム アプリを作成する
受信 Web Hook をアクティブ化し、目的のワークスペースに新しい Web フックを追加する
Web フックを作成する必要があるチャネルを選択します。
Web フック URL をコピーし、Azure DevOps に移動します。
組織内でサービス フック サブスクリプションを作成する
プロジェクト の [サービス フック] ページに 移動します。
https://{orgName}/{project_name}/_settings/serviceHooks
[サブスクリプションの作成] を選択します。
Slack チャネルに表示するイベントの種類を選択します。
各トリガーを特定の方法でフィルター処理できます。 たとえば、プル要求が発生するリポジトリ、適用先のブランチ、要求を確認するために必要または招待されたチーム メンバーで、作成されたプル要求トリガーをフィルター処理します。
作成した Slack 統合から Web Hook URL を貼り付け、[完了] を選択 します。
プロジェクトでイベントが発生すると、チームの Slack チャネルに通知が表示されます。
よく寄せられる質問
Q: トリガーを構成するときに pull request イベントがオプションとして表示されないのはなぜですか?
A: プル要求は、Git を使用するプロジェクトでのみ使用できます。 プロジェクトで TFVC を使用している場合、プル イベント トリガーは使用できません。また、コード イベントは "Code pusheded in" ではなく "Code チェックed in" と呼ばれます。
Q: Slack チャネルに複数のイベントを表示するにはどうすればよいですか?
A: 必要なイベントの種類ごとに新しいサブスクリプションを作成します。 たとえば、Slack チャネルでビルドエラーと新しい作業項目を表示する場合は、さらに 2 つのサブスクリプションを作成します。