次の方法で共有


サービス フック コンシューマー

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

Service Bus は、アプリケーションとサービス間の非同期通信を容易にするメッセージング サービスです。 サービス フック コンシューマーとして、Service Bus のキューやトピックとの統合に加え、Azure Notification Hubs との統合も提供します。

通知ハブにメッセージを送信する

このアクションは、汎用のテンプレート通知を Notification Hubs の指定されたインスタンスに送信します。

  • コンシューマー ID: azureServiceBus

  • アクション ID: serviceBusNotificationHubSend

  • サポートされるイベント: すべてのイベント

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    connectionString SAS 接続文字列 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 いいえ
    ServiceConnectionInputId Azure Resource Manager 接続 サービス接続の ID。 string いいえ
    ServiceBusHostNameInputId Service Bus ホスト名 Azure portal のホスト名 ( sb://<Service-Bus-name>.servicebus.windows.net形式)。 string いいえ
    connectionString SAS 接続文字列 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 いいえ
    ServiceConnectionInputId Azure Resource Manager 接続 サービス接続の ID。 string いいえ
    ServiceBusHostNameInputId Service Bus ホスト名 Azure portal のホスト名 ( sb://{Service-Bus-name}.servicebus.windows.net形式)。 string いいえ
    connectionString SAS 接続文字列 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 いいえ
    ServiceConnectionInputId Azure 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.pushbuild.completetfvc.checkin

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    serverBaseUrl Bamboo ベース URL Bamboo サーバーのホスト名を含む URI。 uri イエス
    basicAuthCredentials 基本認証資格情報 Bamboo サーバーに対する認証に使用する標準の資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して、トランスポート層セキュリティ (TLS) を使用して資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 string イエス
    planName 計画 キューに登録するプランの名前。 string イエス

Datadog

Datadog は、クラウド環境向けの監視および分析プラットフォームです。

Datadog でイベントを投稿する

このアクションにより、Datadog にイベントと対応するメトリックが作成されます。

  • コンシューマー ID: datadog

  • アクション ID: postEventInDatadog

  • サポートされるイベント: すべてのイベント

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    apiKey Datadog API キー Datadog アカウントのアクセス キー。 API キーは、Datadog ポータルで確認できます。 プロファイルに移動し、 組織の設定>API キーを選択します。 string イエス
    accountType Datadog アカウントの種類 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: GOV
    string イエス

Grafana

Grafana は、オープンソースのダッシュボードとグラフ エディターです。

Grafana データベースに注釈を追加する

このアクションにより、Grafana に注釈が作成されます。

  • コンシューマー ID: grafana

  • アクション ID: addAnnotation

  • サポートされているイベント: ms.vss-release.deployment-completed-event

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    url GrafanaのURL Grafana で注釈を投稿するために使用する URL。 uri イエス
    apiToken API トークン 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.pushgit.pullrequest.merged

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    serverBaseUrl Jenkins ベース 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.pushgit.pullrequest.mergedbuild.completetfvc.checkinms.vss-release.deployment-completed-event

  • 設定:

    入力 ID 名前 説明 データの種類 必須
    serverBaseUrl Jenkins ベース 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 名前 説明 データの種類 必須
    url Slack のウェブフック 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 ラベル 作成したカードに適用するラベル色のコンマ区切りのリスト。 有効なラベルの色名は、 redorangeyellowgreenblue、および 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 名前 説明 データの種類 必須
    url URL HTTP POST を送信する URL。 uri イエス
    acceptUntrustedCerts 信頼されていない SSL 証明書を受け入れる エンドポイントに対して信頼された Secure Sockets Layer (SSL) 証明書を必要としないオプション。 このオプションは、開発とテスト中にのみ使用します。 boolean いいえ
    basicAuthCredentials 基本認証資格情報 標準の HTTP 認証資格情報。 プレーン テキストで資格情報を送信しないようにするには、HTTPS プロトコルを使用して TLS 経由で資格情報を暗号化します。 Azure DevOps でサービス プリンシパルとマネージド ID を使用することをお勧めします。 string イエス
    httpHeaders HTTP ヘッダー 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 イエス
    apiToken API トークン Zendesk API トークン。 トークンを見つけるには、Zendesk アプリに移動し、[ Admin>Channels>API] を選択します。 string イエス