Azure SRE エージェントの GitHub コネクタ

エージェントがソース コードの読み取り、エラーの検索、問題の作成、ワークフローのトリガー、デプロイとインシデントの照合を行えるように、GitHub リポジトリを接続します。

ヒント

概要

  • Code Access は、エージェントのソース コード、IaC、構成を調査コンテキストとして提供します。
  • GitHub Connector では、問題、PR、およびワークフロー操作が有効になります。
  • GitHub MCP は、ガバナンス コントロールを使用して完全なGitHub ツール アクセスを提供します。
  • OAuthPAT、または BYO GitHub App で認証します。 3 つの作業はすべて、 github.comで行います。 GitHub Enterprise Cloud (<tenant>.ghe.com) には BYO アプリが必要です。

ソース コード、インフラストラクチャ定義、デプロイ構成、スキル、Runbook は、GitHubで利用できます。 エージェントがこれらの成果物を読み取ることができる場合、調査は一般的なトラブルシューティングから、正確なファイル、正確なコミット、および正確な構成変更を参照する根本原因分析に進みます。

エージェントで GitHub コネクタを使用する方法

SRE エージェントAzure 3 つの方法でGitHubに接続し、それぞれ異なる目的を果たします。

接続の種類 設定する場所 エージェントが取得するもの
コードへのアクセス Builder > コード アクセス コード検索、パス/分岐によるファイル読み取り、エラーからソースへの相関関係、セマンティック コード検索
GitHub コネクタ Builder > コネクタ > コネクタの追加 Issue の作成/一覧、PR の作成/マージ、GitHub Actions ワークフローのトリガーと追跡
GitHub MCP Builder > コネクタ > コネクタの追加 承認ポリシーとツール選択コントロールを使用した、MCP を介した完全なGitHub ツール カタログ

同じエージェントで複数の接続の種類を使用できます。 それぞれ異なるランタイムの目的を果たします。

GitHub コネクタの認証方法

エージェントの動作とは別に、GitHubに対する認証方法を選択します。 3 つの方法を使用でき、すべての接続の種類で機能します。

認証方法 どのように機能するのか サポートされているホスト 最適な用途
OAuth ブラウザー ポップアップでGitHub アカウントでサインインする github.com クイック対話型セットアップ (制限: エージェントあたり 10 トークン)
PAT repo スコープを持つ詳細な個人用アクセストークンを作成する github.com サービス アカウント、非対話型環境
BYO GitHub アプリ 独自のGitHub アプリを登録し、秘密キーをAzure Key Vaultに格納する github.com および <tenant>.ghe.com エンタープライズ ガバナンス、EMU 環境、GitHub Enterprise Cloud

github.comの場合、3 つのメソッドはすべてすべての接続の種類で機能します。 GitHub Enterprise Cloud ホスト (<tenant>.ghe.com) の場合、BYO GitHub アプリのみが使用できます。

認証の種類別のアクセス許可

Operation OAuth または PAT の最小値 GitHub アプリの最小値
リポジトリメタデータとクローン/読み取り repo プライベート リポジトリの場合は public_repo 、パブリック専用アクセスの場合は リポジトリ メタデータ: 読み取りコンテンツ: 読み取り
問題の一覧表示/作成 OAuth/PAT の問題対応リポジトリ スコープ リポジトリの問題: 必要に応じて読み取り/書き込み
プル要求操作 OAuth/PAT の PR 対応リポジトリ スコープ リポジトリ Pull requests: 必要に応じて読み取り/書き込み

ヒント

OAuth トークンが自動的に更新される

GitHub OAuth トークンは約 8 時間後に期限切れになりますが、エージェントは 20 分のバッファーを使用して有効期限が切れる前に自動的に更新します。 各更新では、新しい更新トークンが生成され、約 6 か月間続く自己維持型の更新チェーンが作成されます。 コネクタは、手動サインインなしで、長い調査と夜間のスケジュールされたタスクを通じて接続された状態を維持します。

この自動更新は 、OAuth 接続にのみ適用されます。 PAT 接続には、手動でのトークン ローテーションが必要です。 BYO GitHub アプリ接続の場合は、必要に応じ秘密キーをAzure Key Vaultでローテーションします。

再認証が必要な場合:更新トークンの有効期限が切れた場合 (約 6 か月)、GitHub アプリの承認を取り消した場合、またはコネクタがバージョン 26.2.247.0 より前に設定されている場合 (1 つは更新トークンを保存し、今後は自動更新を有効にします)。

GitHub コネクタでエージェントが実行できること

ソース コード分析機能

  • 接続されているすべてのリポジトリのコードを検索します。
  • パスと分岐でファイルの内容を読み取ります。
  • エラーをソース コードと関連付ける: Azure リソース エラーを特定のファイルと行番号にマップします。
  • セマンティック コード検索: 自然言語クエリを使用してインシデントに関連するコードを検索します。
  • IaC ファイルの識別: リポジトリ内の Bicep、Terraform、ARM テンプレートを検出します。

課題とプルリクエストの管理

  • イシューを作成し、タイトル、本文、ラベル、担当者を指定します。
  • 自動終了キーワードを含むイシューとプルリクエストにコメントします。
  • タイトル、本文、ラベル、または状態を変更して、問題を更新します。
  • セキュリティの脆弱性を確認するには、Dependabot アラートを取得します

ワークフローの自動化

  • GitHub Actions ワークフローをトリガーして、カナリアデプロイまたは本番デプロイを開始します。
  • ワークフロー実行を追跡 して、ディスパッチされたワークフローの状態を監視します。
  • PR のマージ状況を確認し、プルリクエストがマージされているかどうか確認します。

GitHub Enterprise Cloud

BYO GitHub アプリを使用して、GitHub Enterprise Cloud (<tenant>.ghe.com) でホストされているリポジトリを接続します。 エージェントは、Azure Key Vaultに格納するアプリの秘密キーを使用して、リポジトリごとに有効期間の短いインストール トークンを作成します。

次のことを確認してください。

  • Contents: 読み取り専用アクセス許可を持つ GHE インスタンスに作成されたGitHub アプリ。
  • Azure Key Vaultにシークレットとして格納されているアプリの秘密キー。
  • エージェントのマネージド IDには、Vault に対してキー コンテナー シークレット ユーザーのロールが付与されています。

完全なセットアップ ガイドについては、「Connect GitHub Enterprise Cloud リポジトリを参照してください。

複数のパスで同じリポジトリを構成する

複数のGitHub パスで同じリポジトリを構成します。 各パスは、異なるランタイム ジョブを提供します。

Scenario 推奨される方法
コードのコンテキストと課題の操作が必要 Code Access と GitHub Connector または GitHub MCP を構成する
広範な MCP ツール カタログのみが必要 GitHub MCP のみを使用する
エンタープライズ ホストが必要 (<tenant>.ghe.com) コード アクセスを使用して GHE BYO アプリを使用する
コネクタ コントラクトの厳格な動作が必要 GitHub コネクタを使用する

制限と制約

資源 Guidance
Hosts 各ホストを個別に構成する (github.com<tenant>.ghe.com)
認証レコード ホスト スコープ。あるホストを切断しても、別のホストが切断されない
GitHub Enterprise Cloud 認証 BYO アプリのみ
BYO アプリのKey Vault要件 秘密キーはKey Vaultにあり、エージェント ID で読み取り可能である必要があります

Troubleshooting

症状: 考えられる原因 修正
Code Access リポジトリの行に [失敗] と表示されますが、問題のクエリは引き続き機能します 異なるエンドポイントまたは特定時点の正常性チェックの失敗 コード アクセス接続を再テストし、リポジトリ メタデータのアクセス許可を確認する
BYO アプリの検証が失敗する クライアント ID、秘密キー URI、またはアプリのインストール スコープの不一致 クライアント ID、Key Vault シークレット コンテンツ、アプリのインストール スコープを確認する
<tenant>.ghe.com ホストに OAuth/PAT が表示されない 予想される動作 BYO GitHub アプリを使用する
認証が成功した後に複製/読み取りが失敗する アプリまたはトークンに対するメタデータ/コンテンツの読み取りアクセス許可がありません 必要なリポジトリのアクセス許可を付与して再試行する
PR または Issue のアクションが失敗します Issue/PR の権限がありません OAuth/PAT スコープまたは GitHub アプリに問題/PR アクセス許可を追加する

GitHub コネクタの使用を開始する

やりたいこと ガイド
調査用のエージェント コード コンテキストを指定する (OAuth/PAT) ソース コードの接続
問題、PR、およびワークフロー操作を有効にする (OAuth/PAT) コネクタGitHubセットアップ
github.com または <tenant>.ghe.com 用の BYO GitHub App を設定する Enterprise Cloud GitHub接続する
ガバナンス制御を備えた GitHub MCP ツールを追加する MCP コネクタを設定する

次のステップ