Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
サービス フックを使用すると、Azure DevOps プロジェクトでイベントが発生したときにコンシューマー サービスに対してアクションを実行できます。 たとえば、サービス フックは、ビルドが失敗したときにコンシューマーに通知できます。
サービス フックを構成するには、イベント、コンシューマー、およびアクションを指定するサブスクリプションを作成します。 一部のコンシューマーでは、Azure DevOps ではなくコンシューマー サービスでサブスクリプションを作成します。 この記事では、Azure DevOps で プログラムによってサブスクリプションを作成 するときに使用するコンシューマー設定について説明します。
Azure DevOps でサブスクリプションを作成するときに、次のコンシューマーから選択できます。
- Azure Service Bus
- Azure ストレージ
- 竹
- Datadog
- グラファナ
- ジェンキンス
- スラック
- Trello
- Webhook
- Zendesk
これらのコンシューマーと、サービス フックと統合できるその他のユーザーについては、「 使用可能なサービス」を参照してください。
Azure Service Bus
Service Bus は、アプリケーションとサービス間の非同期通信を容易にするメッセージング サービスです。 サービス フック コンシューマーとして、Service Bus のキューやトピックとの統合に加え、Azure Notification Hubs との統合も提供します。
通知ハブにメッセージを送信する
このアクションは、汎用のテンプレート通知を Notification Hubs の指定されたインスタンスに送信します。
コンシューマー ID:
azureServiceBusアクション ID:
serviceBusNotificationHubSendサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 connectionStringSAS 接続文字列 Service Bus との接続に使用する Shared Access Signature (SAS) 接続文字列。 この接続文字列は、Azure portal で入手できます。 stringイエス notificationHubName通知ハブ名 通知を送信する通知ハブの名前。 名前に含めることができるのは、文字、数字、ピリオド、ハイフン、スラッシュ、アンダースコアのみです。 名前の最初と最後は、文字か数字にする必要があります。 ハブは既に存在している必要があります。 stringイエス tagsExpressionタグ 特定のデバイス セットを対象とするタグ式。 詳細については、「ルーティングとタグ式」を参照してください。 stringいいえ
Service Bus キューにメッセージを送信する
このアクションは、イベントの JSON 文字列表現を指定された Service Bus キューに送信します。 詳細については、「 Service Bus キュー、トピック、サブスクリプション」を参照してください。
コンシューマー ID:
azureServiceBusアクション ID:
serviceBusQueueSendサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 AuthenticationMechanismInputId認証モード 使用する認証モード: 接続文字列またはサービス接続。 stringいいえ ServiceConnectionInputIdAzure Resource Manager 接続 サービス接続の ID。 stringいいえ ServiceBusHostNameInputIdService Bus ホスト名 Azure portal のホスト名 ( sb://<Service-Bus-name>.servicebus.windows.net形式)。stringいいえ connectionStringSAS 接続文字列 Service Bus との接続に使用する SAS 接続文字列。 この接続文字列は、Azure portal で入手できます。 stringいいえ queueNameキュー名 メッセージの送信先となるキューの名前。 名前に含めることができるのは、文字、数字、ピリオド、ハイフン、スラッシュ、アンダースコアのみです。 名前の最初と最後は、文字か数字にする必要があります。 キューが存在しない場合は、作成されます (指定された接続文字列に必要なアクセス許可がある場合)。 stringイエス bypassSerializer非初期化文字列として送信する .NET シリアル化文字列ではなく、非シリアル化文字列として Service Bus にメッセージを送信するためのオプション。 この設定は、受信側が .NET クライアントでない場合 (たとえば、クライアントがノード用 Azure クライアント ライブラリを使用する場合) に選択します。 booleanいいえ resourceDetailsToSend送信するリソースの詳細 キューに送信するリソース フィールドの数。 可能性は、すべてのフィールド、最小数、およびなしです。 stringいいえ messagesToSend送信するメッセージ キューに送信するメッセージの種類。 stringいいえ detailedMessagesToSend送信する詳細なメッセージ キューに送信する詳細メッセージの種類。 stringいいえ
Service Bus トピックにメッセージを送信する
このアクションは、イベントの JSON 文字列表現を指定された Service Bus トピックに送信します。 詳細については、「Azure portal を使用して Service Bus トピックとそのサブスクリプションを作成する」を参照してください。
コンシューマー ID:
azureServiceBusアクション ID:
serviceBusTopicSendサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 AuthenticationMechanismInputId認証モード 使用する認証モード。 stringいいえ ServiceConnectionInputIdAzure Resource Manager 接続 サービス接続の ID。 stringいいえ ServiceBusHostNameInputIdService Bus ホスト名 Azure portal のホスト名 ( sb://{Service-Bus-name}.servicebus.windows.net形式)。stringいいえ connectionStringSAS 接続文字列 Service Bus との接続に使用する SAS 接続文字列。 この接続文字列は、Azure portal で入手できます。 stringいいえ topicNameトピック名 メッセージの送信先となるトピックの名前。 名前に含めることができるのは、文字、数字、ピリオド、ハイフン、スラッシュ、アンダースコアのみです。 名前の最初と最後は、文字か数字にする必要があります。 トピックが存在しない場合は、指定された接続文字列に必要なアクセス許可がある場合に作成されます。 stringイエス bypassSerializer非初期化文字列として送信する .NET シリアル化文字列ではなく、非シリアル化文字列として Service Bus にメッセージを送信するためのオプション。 この設定は、受信側が .NET クライアントでない場合 (たとえば、クライアントがノード用 Azure クライアント ライブラリを使用する場合) に選択します。 booleanいいえ resourceDetailsToSend送信するリソースの詳細 トピックに送信するリソース フィールドの数。 可能性は、すべてのフィールド、最小数、およびなしです。 stringいいえ messagesToSend送信するメッセージ トピックに送信するメッセージの種類。 stringいいえ detailedMessagesToSend送信する詳細なメッセージ トピックに送信する詳細メッセージの種類。 stringいいえ
Azure Storage
ストレージは、さまざまな種類のデータに対応するクラウド ストレージ ソリューションです。 Azure Queue Storage は、サービス フック コンシューマーとして機能できるメッセージング キューを提供する Storage の一部です。
ストレージ キューにメッセージを挿入する
このアクションにより、イベントの JSON 文字列表現が指定された Storage キューに挿入されます。 詳細については、「 Azure Queue Storage とは」を参照してください。
コンシューマー ID:
azureStorageQueueアクション ID:
enqueueサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 AuthenticationMechanismInputId認証モード 使用する認証モード。 stringいいえ ServiceConnectionInputIdAzure Resource Manager 接続 サービス接続の ID。 stringいいえ accountNameストレージ アカウント名 ストレージ アカウントに関連付けられている名前。 この名前は、Azure portal で使用できます。 stringイエス accountKeyストレージ アカウント キー ストレージ アカウントに関連付けられているキー。 stringいいえ queueNameキュー名 Storage 内で使用するキューの小文字のみの名前。 この名前のキューがまだ存在しない場合は作成されます。 stringイエス visiTimeoutメッセージの表示タイムアウト エンキューされたメッセージの、サーバー時刻を基準とした可視性タイムアウト値 (秒単位)。 値は 0 以上である必要があり、7 日または 604,800 秒を超えることはできません。 可視性のタイムアウトは、メッセージの time-to-live 値より小さい値に設定する必要があります。 numberイエス ttlメッセージの有効期限 キュー メッセージの有効期間 (秒単位)。 使用できる最大値は 7 日間、つまり 604,800 秒です。 numberイエス resourceDetailsToSend送信するリソースの詳細 キューに送信するリソース フィールドの数。 可能性は、すべてのフィールド、最小数、およびなしです。 stringいいえ messagesToSend送信するメッセージ キューに送信するメッセージの種類。 stringいいえ detailedMessagesToSend送信する詳細なメッセージ キューに送信する詳細メッセージの種類。 stringいいえ
Bamboo
Bamboo は Atlassian の継続的インテグレーション サーバーです。
ビルドをキューに追加する
このアクションは、Bamboo ビルドをキューに追加します。
コンシューマー ID:
bambooアクション ID:
queueBuildサポートされるイベント:
git.push、build.complete、tfvc.checkin設定:
入力 ID 名前 説明 データの種類 必須 serverBaseUrlBamboo ベース URL Bamboo サーバーのホスト名を含む URI。 uriイエス basicAuthCredentials基本認証資格情報 Bamboo サーバーに対する認証に使用する標準の資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して、トランスポート層セキュリティ (TLS) を使用して資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 stringイエス planName計画 キューに登録するプランの名前。 stringイエス
Datadog
Datadog は、クラウド環境向けの監視および分析プラットフォームです。
Datadog でイベントを投稿する
このアクションにより、Datadog にイベントと対応するメトリックが作成されます。
コンシューマー ID:
datadogアクション ID:
postEventInDatadogサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 apiKeyDatadog API キー Datadog アカウントのアクセス キー。 API キーは、Datadog ポータルで確認できます。 プロファイルに移動し、 組織の設定>API キーを選択します。 stringイエス accountTypeDatadog アカウントの種類 Datadog アカウントの種類。 アカウントの種類は、Datadog アカウントが使用する URL のホスト名から確認できます。
-app.datadoghq.com:US
-app.datadoghq.eu:EU
-us3.datadoghq.com:US3
-us5.datadoghq.com:US5
-ap1.datadoghq.com:AP1
-app.dog-gov.com:GOVstringイエス
Grafana
Grafana は、オープンソースのダッシュボードとグラフ エディターです。
Grafana データベースに注釈を追加する
このアクションにより、Grafana に注釈が作成されます。
コンシューマー ID:
grafanaアクション ID:
addAnnotationサポートされているイベント:
ms.vss-release.deployment-completed-event設定:
入力 ID 名前 説明 データの種類 必須 urlGrafanaのURL Grafana で注釈を投稿するために使用する URL。 uriイエス apiTokenAPI トークン Grafana データベースに注釈を投稿するためのアクセス トークン。 トークンの作成の詳細については、「 組織のサービス アカウント トークンとダッシュボードを作成する」を参照してください。 stringイエス tagsタグ 注釈の追加に使用するタグのコンマ区切りのリスト。 stringイエス annotationDeploymentDurationWindow展開期間ウィンドウに注釈を付ける 注釈の期間ウィンドウを構成するためのオプション。
- 選択すると、注釈はデプロイの開始から完了までの時間に適用されます。
- 選択されていない場合、注釈はデプロイの完了に適用されます。booleanいいえ textテキスト 注釈のカスタム説明。 指定しない場合、この設定ではリリースと状態が記述されます。 この設定には、 <a href="https://www.contoso.com" target="_blank">Contoso</a>などのリンクを含めることができます。stringいいえ dashboardIdダッシュボード 注釈を追加するダッシュボードの ID。 ID が指定されていない場合、注釈はグローバル レベルで追加されます。 stringいいえ
Jenkins
Jenkins は、ソフトウェア プロジェクトを継続的にビルドおよびテストするために使用できる継続的インテグレーション サーバーです。
Git ビルドをトリガーする
このアクションでは、 Jenkins Git プラグイン を使用して、Git リポジトリでビルドをトリガーします。
コンシューマー ID:
jenkinsアクション ID:
triggerGitBuildサポートされるイベント:
git.push、git.pullrequest.merged設定:
入力 ID 名前 説明 データの種類 必須 serverBaseUrlJenkins ベース URL Jenkins サーバーのホスト名を含む URI。 uriイエス basicAuthCredentials基本認証資格情報 標準の HTTP 認証資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して TLS 経由で資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 stringイエス useTfsPlugin統合レベル 選択した統合レベル。これは、次の 2 つの値のいずれかです。
- 組み込みの Jenkins API
- Azure DevOps Server プラグインによって提供される拡張統合 (そのプラグインが Jenkins サーバーにインストールされている場合)stringいいえ
汎用ビルドをトリガーする
このアクションにより、Jenkins ビルド URL を呼び出す汎用 Jenkins ビルドがトリガーされます。
コンシューマー ID:
jenkinsアクション ID:
triggerGenericBuildサポートされているイベント:
git.push、git.pullrequest.merged、build.complete、tfvc.checkin、ms.vss-release.deployment-completed-event設定:
入力 ID 名前 説明 データの種類 必須 serverBaseUrlJenkins ベース URL Jenkins サーバーのホスト名を含む URI。 uriイエス basicAuthCredentials基本認証資格情報 標準の HTTP 認証資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して TLS 経由で資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 stringイエス buildName建築する トリガーするビルドの名前。 stringイエス useTfsPlugin統合レベル 選択した統合レベル。これは、次の 2 つの値のいずれかです。
- 組み込みの Jenkins API
- Azure DevOps Server プラグインによって提供される拡張統合 (そのプラグインが Jenkins サーバーにインストールされている場合)stringいいえ buildAuthTokenビルド トークン ビルドの承認トークン。 トークンを知っているユーザーのみが、ビルドをリモートでトリガーできます。 stringいいえ buildParameterizedパラメーターの受け取り ビルドがパラメーターを受け入れるかどうかを指定するオプション。 booleanいいえ buildParamsビルド パラメーター 名前と値のペアの形式でパラメーターを作成します。 各ペアでは、名前と値はコロン ( <parameter>:<value>など) で区切られます。 各名前と値のペアは、独自の行に表示されます。stringいいえ
Slack
Slack は、チームコミュニケーションのための検索可能なプラットフォームです。
チャネルにメッセージを投稿する
このアクションにより、Slack チャネルにイベントに関するメッセージが投稿されます。 詳細については、「Slack を使用 して Azure DevOps のサービス フックを作成する」を参照してください。
コンシューマー ID:
slackアクション ID:
postMessageToChannelサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 urlSlack のウェブフック URL HTTP POST 要求を送信するために Slack によって提供される Webhook URL。 uriイエス
Trello
Trello は、チームがワークフローを追跡するのに役立つボード、リスト、カードを使用するプロジェクト管理ツールです。
カードを作成する
このアクションにより、Trello の既存リストにカードが作成されます。 カードは、タスク、問題、イベント、またはその他のプロジェクト関連アイテムを表すことができます。 詳細については、「 Trello を使用して Azure DevOps Services と TFS のサービス フックを作成する」を参照してください。
コンシューマー ID:
trelloアクション ID:
createCardサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 userTokenユーザー トークン Trello リソースへのアクセスを提供するユーザー トークン。 トークンを取得するには、 Trello 承認ページに移動します。 stringイエス boardIdボード Trello カードが作成されるボードの名前。 stringイエス listId一覧 Trello カードが作成されるリストの名前。 stringイエス labelsラベル 作成したカードに適用するラベル色のコンマ区切りのリスト。 有効なラベルの色名は、 red、orange、yellow、green、blue、およびpurpleです。stringいいえ addToTopリストの先頭での作成 Trello リストの先頭または末尾にカードを作成するかどうかを示すオプション。 このフィールドが trueされると、カードは最初に作成されます。booleanいいえ cardNameカード名 新しいカードの名前。 既定では、イベントのテキストの説明が名前として使用されます。 プレースホルダーを使用して、イベントのコンテンツを名前に挿入できます。 詳細については、「 Trello を使用して Azure DevOps Services と TFS のサービス フックを作成する」を参照してください。 stringいいえ cardDescriptionカードの説明 新しいカードの説明。 既定では、イベントの詳細な Markdown の説明が説明として使用されます。 プレースホルダーを使用して、イベントのコンテンツを説明に挿入できます。 詳細については、「 Trello を使用して Azure DevOps Services と TFS のサービス フックを作成する」を参照してください。 stringいいえ
リストを作成する
このアクションにより、Trello の既存ボードにリストが作成されます。 リストはボード上のカードを整理するために使用され、通常は状態を表します。 詳細については、「 Trello を使用して Azure DevOps Services と TFS のサービス フックを作成する」を参照してください。
コンシューマー ID:
trelloアクション ID:
createListサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 userTokenユーザー トークン Trello リソースへのアクセスを提供するユーザー トークン。 トークンを取得するには、 Trello 承認ページに移動します。 stringイエス boardIdボード Trello リストが作成されるボードの名前。 stringイエス addToBottomボードの下部に作成 ボードの先頭または末尾にカードを作成するかどうかを示すオプション。 このフィールドが trueされると、カードは最後に作成されます。booleanいいえ listNameリスト名 新しいリストの名前。 既定では、イベントのテキストの説明が名前として使用されます。 プレースホルダーを使用して、イベントのコンテンツを名前に挿入できます。 詳細については、「 Trello を使用して Azure DevOps Services と TFS のサービス フックを作成する」を参照してください。 stringいいえ
Webhooks(ウェブフック)
Webhook は、パブリック エンドポイントを持つ任意のサービスに Azure DevOps イベントの JSON 表現を送信する方法を提供します。
HTTP 経由のポスト
このアクションは、イベントの JSON オブジェクト表現を指定された URL にポストします。 イベント ペイロードにプライベート データが含まれる可能性があるため、HTTPS エンドポイントの使用をお勧めします。 詳細については、「Webhook」を参照してください。
コンシューマー ID:
webHooksアクション ID:
httpRequestサポートされるイベント: すべてのイベント
設定:
入力 ID 名前 説明 データの種類 必須 urlURL HTTP POST を送信する URL。 uriイエス acceptUntrustedCerts信頼されていない SSL 証明書を受け入れる エンドポイントに対して信頼された Secure Sockets Layer (SSL) 証明書を必要としないオプション。 このオプションは、開発とテスト中にのみ使用します。 booleanいいえ basicAuthCredentials基本認証資格情報 標準の HTTP 認証資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して TLS 経由で資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 stringイエス httpHeadersHTTP ヘッダー HTTP ヘッダーのキーと値は、キーと値のペアの形式で表されます。 各ペアでは、キーと値はコロン ( <key>:<value>など) で区切られます。 各キーと値のペアは、独自の行に表示されます。 これらの値は、サービス フック サブスクリプションにアクセスできるすべてのユーザーが表示できます。stringいいえ resourceDetailsToSend送信するリソースの詳細 キューに送信するリソース フィールドの数。 可能性は、すべてのフィールド、最小数、およびなしです。 stringいいえ messagesToSend送信するメッセージ キューに送信するメッセージの種類。 stringいいえ detailedMessagesToSend送信する詳細なメッセージ キューに送信する詳細メッセージの種類。 stringいいえ
Zendesk
Zendesk は、ヘルプ デスクのチケット発行、問題の追跡、およびカスタマー サービス サポートを提供するサービスとしてのソフトウェア (SaaS) スイートです。
チケットとしてプライベート コメントを作成する
このアクションにより、Zendesk チケットにプライベート コメントが作成されます。
コンシューマー ID:
zendeskアクション ID:
createPrivateCommentサポートされているイベント:
workitem.commented設定:
入力 ID 名前 説明 データの種類 必須 accountNameアカウント名 Zendesk アカウント名。 アカウント名は、Zendesk アカウントの URL で見つけることができます。この形式は https://<account-name>.zendesk.com。stringイエス usernameユーザー名 チケットを更新する Zendesk ユーザーのユーザー名。 stringイエス apiTokenAPI トークン Zendesk API トークン。 トークンを見つけるには、Zendesk アプリに移動し、[ Admin>Channels>API] を選択します。 stringイエス