Microsoft Teams と共に Azure Pipelines を使用する

Azure DevOps Services

Microsoft Teams 用の Azure Pipelines アプリを使用すると、パイプラインのイベントを監視できます。 リリース、保留中の承認、完了したビルドなどの通知を Teams チャネルに設定して取得できます。 また、Teams チャネル内からリリースを承認することも可能です。

注意

この機能は、Azure DevOps Services でのみ使用できます。 通常、新しい機能は最初にクラウド サービスで導入されてから、Azure DevOps Server の次のメジャー バージョンまたは更新プログラムでオンプレミスで使用できるようになります。 詳細については、「Azure DevOps 機能タイムライン」を参照してください。

前提条件

  • Azure DevOps プロジェクトが必要です。 詳細については、「プロジェクトを作成する」を参照してください。
  • パイプライン サブスクリプションを設定するには、プロジェクト管理者である必要があります。

Azure Pipelines アプリを設定する

  1. Microsoft Teams で、Apps ストアに移動し、Azure Pipelines を検索して、Azure Pipelines を選択します。

    [Apps] ボタン、次に [Azure Pipelines] ボタンを選択したスクリーンショット。

  2. [開く] ドロップダウン矢印を選択し、[チームに追加] を選択します。

    [開く] ボタンを選択し、[チームに追加] ボタンを選択したスクリーンショット。

  3. チーム名を選択または入力し、[Set up a bot] (ボットの設定)を選択します。

    [Set up a bot] (ボットの設定) ボタンを選択します。

  4. Teams の会話ウィンドウで、「@azurePipelines signin」と入力します。

  5. [サインイン] を選択し、Azure Pipelines への認証を完了します。

コマンドの使用

次のコマンドを使用して、プロジェクト内のすべてのパイプラインまたは特定のパイプラインのみを監視します。

  • プロジェクト内のすべてのパイプラインを監視します。 URL は、パイプラインへの URL を除き、プロジェクト内の任意のページに設定できます。 たとえば、「 @azure pipelines subscribe https://dev.azure.com/myorg/myproject/ 」のように入力します。

    @azure pipelines subscribe [project url]
    
  • 特定のパイプラインの監視: パイプライン URL は、definitionId または buildId/releaseId が URL に含まれているパイプライン内のどのページでも構いません。 たとえば、「 @azure pipelines subscribe https://dev.azure.com/myorg/myproject/_build?definitionId=123 」のように入力します。

    @azure pipelines subscribe [pipeline url]
    

    リリース デプロイの開始リリース デプロイの完了、およびリリース デプロイの承認の保留中の通知をサブスクライブするリリース パイプラインのもう 1 つの例は @azure pipelines subscribe https://dev.azure.com/myorg/myproject/_release?definitionId=123&view=mine&_a=releases です。

注意

  • [承認を完了する前に、承認者の ID を再検証する] ポリシーを適用したデプロイ承認はサポートされていません。
  • Azure DevOps で組織に対する通知を受け取るために、"OAuth 経由のサードパーティ アプリケーション アクセス" を有効にします。

サブスクリプションの管理

パイプラインをサブスクライブすると、フィルターが適用されずに、いくつかのサブスクリプションが既定で作成されます。 これらのサブスクリプションをカスタマイズすることもできます。 たとえば、ビルドが失敗した場合のみ、またはデプロイが運用環境にプッシュされる場合にのみ通知を希望する可能性があります。 Azure Pipelines アプリは、チャネルでの表示内容をカスタマイズするフィルターをサポートします。 サブスクリプションを管理するには、以下の手順を実行します。

  1. @azure pipelines subscriptions コマンドを実行します。

  2. [すべてのサブスクリプションを表示] を選択します。 サブスクリプションの一覧で、不要なサブスクリプションがある場合は、[削除] を選択します。 サブスクリプションのリストの表示。

  3. 下にスクロールし、[サブスクリプションの追加] を選択します。

  4. 必要なパイプラインとイベントを選択します。

  5. 適切なフィルターを選択し、[保存] を選択します。

    例 1: 失敗したビルドの通知を取得します。

    Teams でのビルド失敗のビジュアル。

    例 2: デプロイが運用環境にプッシュされた場合にのみ通知を受け取ります。

    失敗通知のビジュアル。

    注意

    • チーム管理者は、プロジェクト管理者によって作成されたサブスクリプションを削除または変更することはできません。
    • 通知は、チャット/ダイレクト メッセージ内ではサポートされていません。

チャネルからデプロイを承認する

Azure Pipelines ポータルに移動せずに、チャネル内からデプロイを承認できます。 クラシック リリースの リリース デプロイの承認の保留中 の通知、または YAML パイプラインの 承認通知を待機しているステージの実行 をサブスクライブします。 これらの両方のサブスクリプションは、パイプラインをサブスクライブするときに既定で作成されます。

Teams で、承認の準備ができたことを示します。

ステージの実行が承認を待つたびに、要求を承認または拒否するオプションを含む通知カードがチャネルに投稿されます。 承認者は、通知で要求の詳細を確認し、適切なアクションを実行できます。 次の例では、デプロイが承認されていて、承認の状態がカードに表示されます。

承認されたデプロイが表示されているカード。

Azure Pipelines アプリは、Azure Pipelines ポータルに存在するすべてのチェックと承認のシナリオをサポートしています。 要求は、個人またはチームとして承認できます。

Compose 拡張機能を使用してパイプライン情報を検索および共有する

ユーザーがパイプラインに関する情報を検索して共有できるように、Microsoft Teams 用 Azure Pipelines アプリでは Compose 拡張機能がサポートされています。 パイプライン ID またはパイプライン名でパイプラインを検索できるようになりました。 Compose 拡張機能を機能させるには、ユーザーは @azure pipelines signin コマンドを実行するか、Compose 拡張機能に直接サインインして、関心のある Azure Pipelines プロジェクトにサインインする必要があります。

Compose 拡張機能。

パイプライン URL のプレビュー

Teams にパイプライン URL を追加すると、次の画像のようなプレビューが表示されます。 プレビューは、パイプライン関連の会話を、関連性のある最新の状態に保つのに役立ちます。 コンパクトなカードと展開されたカードのいずれかを選択できます。

例 1: ビルド URL のプレビュー

ビルド URL を展開します。

例 2: リリース URL のプレビュー

リリース URL を展開します。

サインインすると、この機能は Microsoft Teams のチーム内のすべてのチャネルで機能します。

パイプライン チャネルのサブスクライブを解除する

次のコマンドを使用して、プロジェクト内のすべてのパイプラインのサブスクライブを解除します。

@azure pipelines unsubscribe all [project url]

例: URL ですべてのサブスクライブを解除する

@azure pipelines unsubscribe all https://dev.azure.com/myorg/myproject

このコマンドは、プロジェクト内の任意のパイプラインに関連するすべてのサブスクリプションを削除し、チャネルからパイプラインを削除します。

重要

このコマンドを実行できるのは、プロジェクト管理者だけです。

パイプラインの特定の実行にリンクされているすべての通知が一緒にリンクされます。

例 1: リンクされた通知のコンパクト ビュー。

コンパクト スレッド

例 2: リンクされた通知の展開されたビュー。

展開されたスレッド

Azure Pipelines アプリでコマンドを使用する

Azure Pipelines アプリでサポートされている次のコマンドを参照してください。

スラッシュ コマンド 機能
@azure pipelines subscribe [pipeline url/ project url] プロジェクト内の 1 つのパイプラインまたはすべてのパイプラインをサブスクライブして通知を受信する
@azure pipelines subscriptions このチャネルのサブスクリプションを追加または削除する
@azure pipelines feedback 問題を報告するか、機能を提案する
@azure pipelines help スラッシュ コマンドのヘルプを表示する
@azure pipelines signin Azure Pipelines アカウントにサインインする
@azure pipelines signout Azure Pipelines アカウントからサインアウトする
@azure pipelines unsubscribe all [project url] (プロジェクトに属する) すべてのパイプラインとそれに関連付けられているサブスクリプションをチャネルから削除する

マルチテナントを接続する

Microsoft Teams と Azure DevOps に別のメールまたはテナントを使用している場合は、以下の手順を実行して、ユース ケースに基づいてサインインして接続します。

使用事例 Microsoft Teams の Email ID & テナント Azure DevOps の Email ID & テナント サインイン アクション
1 email1@abc.com (テナント 1) email1@abc.com (テナント 1) [サインイン] を選びます
2 email1@abc.com (テナント 1) email2@pqr.com (テナント 2) - Azure DevOps にサインインします。
- 同じブラウザーで、新しいタブを開始し、https://teams.microsoft.com/ に移動します。
- sign in コマンドを実行し、[サインイン] を選択します。
3 email1@abc.com (テナント 1) email2@pqr.com (テナント 2) - [Sign in with different email address] (別のメール アドレスでサインインする)を選択します。
- Email ID ピッカーで、email2 を使用してサインインします。
4 email1@abc.com (テナント 1) email2@pqr.com (既定以外のテナント 3) 現在サポートされていません。

トラブルシューティング

- 同じブラウザーで、新しいタブを開始し、https://teams.microsoft.com/ にサインインします。 @Azure Pipelines signout コマンドを実行し、Microsoft Teams 用 Azure Pipelines アプリがインストールされているチャネルで @Azure Pipelines signin コマンドを実行します。

Sign in ボタンを選択すると、次の例のような同意ページにリダイレクトされます。 メールの横に表示されるディレクトリが、前の手順で選択したディレクトリと同じであることを確認します。 サインイン プロセスを受け入れて完了します。

要求されたアプリのアクセス許可への同意

これらの手順で認証の問題が解決しない場合は、Developer Community にお問い合わせください。