Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020
サービス フックを使用すると、Azure DevOps プロジェクトでイベントが発生したときに、他のサービスでタスクを実行できます。
たとえば、サービス フックを使用すると、Azure DevOps で作業項目が作成されたときに Trello にカードを自動的に作成できます。 または、ビルドが失敗したときに、チームのモバイル デバイスにプッシュ通知を自動的に送信することもできます。 プロジェクトでイベントが発生した際にアクティビティを促すためのより効率的な方法として、カスタムのアプリやサービスでサービス フックを使用することもできます。
サービス フックのしくみ
サービス フックのパブリッシャーは、サブスクライブが可能な一連のイベントを定義します。 サブスクリプションはこれらのイベントを リッスンし、イベントに基づいて実行する アクション を定義します。
コンシューマーもサブスクリプションのターゲットになります。コンシューマーは、イベントが発生したときに独自のアクションを実行できる外部サービスです。
注
サービス フックを使用するには、サービス エンドポイントへの受信接続に対して特定の IP アドレス範囲を許可する必要があります。 サービス エンドポイントは、サービス フックに提供されるプロパティのセットです。 詳細については、「 IP アドレスと範囲の制限」を参照してください。
利用可能なサービス
次のサービスは、サービス フックのターゲットとして使用できます。 Azure DevOps と統合される他のアプリとサービスの詳細については、 Visual Studio Marketplace を参照してください。
サービス | サポートされているイベント | サポートされているアクション | サブスクリプション管理 |
---|---|---|---|
Visual Studio App Center | 作業項目の更新 | 通知を送信する | アプリセンター内で |
AppVeyor | プッシュされたコード | AppVeyor ビルドをトリガーする | AppVeyor で |
Azuqua | すべて | フロー言語オブジェクト (FLO) にイベントを投稿する | アズクアで |
Azure App Service | プッシュされたコード | Web アプリをデプロイする | App Service で |
Azure Service Bus | すべて | Azure Notification Hubs、Service Bus キュー、または Service Bus トピックにメッセージを送信する | Azure DevOps で |
Azure ストレージ | すべて | ストレージ キューにメッセージを挿入する | Azure DevOps で |
竹 | ビルドの完了、コードのプッシュ | ビルドをキューに登録する | Azure DevOps で |
Datadog | すべて | Datadog でイベントを投稿する | Azure DevOps で |
グラファナ | リリース配置が完了しました | Grafana データベースに注釈を追加する | Azure DevOps で |
ジェンキンス | ビルドが完了し、コードがプッシュされ、PR マージが試行されました | ジェネリックビルドまたは Git ビルドをトリガーする | Azure DevOps で |
Microsoft Teams | すべて | チャネルにメッセージを投稿する | Teams 内で |
MyGet | ビルドの完了、コードのプッシュ | NuGet パッケージを MyGet に発行し、MyGet ビルドをトリガーする | MyGet で |
Office 365 | すべて | グループにメッセージを投稿する | Office 365 の場合 |
スラック | すべて | チャネルにメッセージを投稿する | Azure DevOps で |
Trello | すべて | カードまたはリストを作成する | Azure DevOps で |
UserVoice | 作業項目の作成、作業項目の更新 | リンクされた作業項目イベントを送信する | UserVoice で |
Webhook | すべて | HTTP 経由で要求を投稿する | Azure DevOps で |
Workplace メッセージング アプリ | すべて | 通知を送信する | 職場のメッセージング アプリで |
Zapier | すべて | 通知を送信する | Zapier で |
Zendesk | 作業項目へのコメント | チケットにプライベート コメントを作成する | Azure DevOps で |
サービス | サポートされているイベント | サポートされているアクション | サブスクリプション管理 |
---|---|---|---|
Azure Service Bus | すべて | Azure Notification Hubs、Service Bus キュー、または Service Bus トピックにメッセージを送信する | Azure DevOps で |
Azure ストレージ | すべて | ストレージ キューにメッセージを挿入する | Azure DevOps で |
竹 | ビルドの完了、コードのプッシュ | ビルドをキューに登録する | Azure DevOps で |
Datadog | すべて | Datadog でイベントを投稿する | Azure DevOps で |
グラファナ | リリース配置が完了しました | Grafana データベースに注釈を追加する | Azure DevOps で |
ジェンキンス | ビルドが完了し、コードがプッシュされ、PR マージが試行されました | ジェネリックビルドまたは Git ビルドをトリガーする | Azure DevOps で |
Microsoft Teams | すべて | チャネルにメッセージを投稿する | Teams 内で |
Office 365 | すべて | グループにメッセージを投稿する | Office 365 の場合 |
スラック | すべて | チャネルにメッセージを投稿する | Azure DevOps で |
Trello | すべて | カードまたはリストを作成する | Azure DevOps で |
UserVoice | 作業項目の作成、作業項目の更新 | リンクされた作業項目イベントを送信する | UserVoice で |
Webhook | すべて | HTTP 経由で要求を投稿する | Azure DevOps で |
Zendesk | 作業項目へのコメント | チケットにプライベート コメントを作成する | Azure DevOps で |
サブスクリプションの作成
これらのサービスの 1 つを Azure DevOps と統合するには、サブスクリプションを作成します。 多くの場合、ターゲット サービスを構成する必要もあります。 詳細については、統合するサービスのドキュメントを参照してください。
プロジェクトに移動し、[ プロジェクトの設定] を選択し、[ サービス フック] を選択します。
[サブスクリプションの作成] を選択します。
統合するサービスを選択します。
トリガーするイベントと、適用可能なフィルターを選択します。
ターゲット サービスで実行するアクションを選択します。
注
使用可能なアクションは、選択したイベントの種類によって異なります。
設定が正しいことを確認するには、サブスクリプションをテストし、ウィザードを終了します。
よく寄せられる質問
Q: サブスクリプションをセットアップするには、どのようなアクセス許可が必要ですか?
A: [サブスクリプションの編集] と [ サブスクリプションの表示] アクセス許可が必要です。 既定では、プロジェクト管理者のみがこれらのアクセス許可を持っています。 他のユーザーに直接付与するには、 コマンド ライン ツール または Security REST API を使用します。
ビュー権限をグループに付与するには、「サービス フック内のグループのビュー権限を設定する」を参照してください。
Q: サブスクリプションの編集とサブスクリプションの表示のアクセス許可を付与すると、セキュリティにどのような影響がありますか?
A: サブスクリプションの編集 と サブスクリプションの表示 のアクセス許可を持つユーザーは、次のことができます。
- プロジェクト内のすべてのサブスクリプションを表示します。
- プロジェクト内のすべてのサブスクリプションの通知履歴を確認します。
- プロジェクトに任意の種類のサービス フック サブスクリプションを作成します。
ユーザーがアクセス許可を持たないリソースのサブスクリプションを設定した場合、サブスクリプションはトリガーされません。
たとえば、特定のエリア パスの作業項目が更新されたときに通知を送信するサブスクリプションを作成するとします。 そのエリア パス内の作業項目にアクセスできない場合、通知は送信されません。 ただし、他のユーザーが作業項目にアクセスできる場合は、サブスクリプションの通知履歴を確認して、更新について警告することができます。
Q: プロジェクトのサービス フック サブスクリプションをプログラムで作成できますか?
回答: はい。 詳細については、「 サービスをプログラムでフックするサービスを作成するを参照してください。
Q: 承認後に組織へのアプリのアクセス権を削除することはできますか?
回答: はい。 プロファイルから承認を取り消すことができます。
https://visualstudio.microsoft.com にアクセスします。 プロファイル写真を選択し、 Visual Studio プロファイルを選択します。
承認を管理するときは、必ず Visual Studio サイト ( https://visualstudio.microsoft.com) から開始してください。 そのサイトから、承認管理機能の正しい実装にアクセスできます。 組織から始めないでください (
https://dev.azure.com/{organization-name}
)。[ 承認の管理] を選択します。
許可を解除する承認の取り消しを行います。
Q: HipChat のサービス フックを設定できないのはなぜですか?
A: Atlassian は HipChat をサポートしなくなりました。 詳細については、「 Atlassian のよく寄せられる質問」を参照してください。