[アーティクル] 05/22/2024
5 人の共同作成者
フィードバック
この記事の内容
この記事では、Azure Deployment Environments デベロッパー センターまたはプロジェクトにカタログ を追加して構成する方法について説明します。
カタログは、開発チームが環境を作成するための環境定義として知られる、キュレーション済みのコードとしてのインフラストラクチャ (IaC) のテンプレート一式を提供するのに役立ちます。 GitHub または Azure DevOps から独自のソース管理リポジトリをカタログとしてアタッチし、環境定義を含むフォルダーを指定できます。 Deployment Environments は、環境定義のフォルダーをスキャンし、開発チームが環境を作成するために利用できるようにします。
テンプレートをさらにセキュリティで保護するために、カタログは暗号化されています。Azure Deployment Environments は、Microsoft for Azure Services によって管理されるプラットフォームマネージド暗号化キーを使った保存時の暗号化をサポートしています。
GitHub でリポジトリをホストする方法については、GitHub の使用開始 に関する説明をご覧ください。
Azure Repos プロジェクトで Git リポジトリをホストする方法については、「Azure Repos 」をご覧ください。
Microsoft は、デベロッパー センターまたはプロジェクトに追加できる "クイック スタート" カタログ と、リポジトリとして使用できるサンプル カタログ を提供しています。 独自のプライベート リポジトリを使用することも、サンプル カタログ内の環境定義をフォークしてカスタマイズすることもできます。
この記事では、次のことについて説明します。
プロジェクト レベルのカタログを構成する
マネージド ID を構成する
Azure Repos または GitHub からカタログを追加する
カタログを更新する
カタログを削除する
カタログ同期エラーのトラブルシューティング
プロジェクト レベルでカタログをアタッチすると、プラットフォーム エンジニアは、開発チームに固有のキュレーション済み環境定義を提供できます。 さらに、プロジェクト管理者として割り当てられた開発チームのリードが、チームで使用できる環境定義を管理できるようになります。
プラットフォーム エンジニアは、プロジェクト レベルでのカタログの使用を完全に制御できます。 カタログをプロジェクトに追加するには、まずプロジェクト レベルでのカタログの使用をデベロッパー センター レベルで有効にする必要があります。 プラットフォーム エンジニアは、プロジェクト レベルで使用できるカタログ 項目の種類 (環境定義など) を構成することもできます。
既定では、プロジェクト レベルでのカタログの使用は無効になっており、どのカタログ アイテムの種類も有効になっていません。 プロジェクト レベルのカタログの環境定義は同期され、2 つの条件下で使用できます。 まず、対応するデベロッパー センター レベルでプロジェクト ベースのカタログを有効にする必要があります。 次に、プロジェクトの環境定義の使用を有効にする必要があります。
プロジェクトにカタログを追加する
プロジェクトにカタログを追加する前に、デベロッパー センター レベルでプロジェクト レベルのカタログを有効にする必要があります。 また、プロジェクト レベルで環境定義の使用を有効にする必要もあります。
デベロッパー センター レベルでプロジェクト レベルのカタログの使用を有効にするには:
Azure portal で、デベロッパー センターに移動します。
左側のメニューの [設定] で [構成] を選択します。
[プロジェクト レベルのカタログ] ペインで、[プロジェクトごとにカタログを有効にする] を選択し、[適用] を選択します。
プロジェクトで環境定義の使用を有効にするには:
Azure portal で、目的のプロジェクトに移動します。
左側のメニューの [設定] で、[カタログ] を選択します。
[カタログ] ページで、[カタログ アイテムのアクセス許可] を選択します。
[カタログ アイテムの設定] ペインで、[Azure デプロイ環境の定義] を選択して、プロジェクト レベルで環境定義の使用を有効にします。
これで、プロジェクトにカタログを追加できます。
認証にマネージド ID または個人用アクセス トークン (PAT) を使用するカタログの場合は、プロジェクト用のマネージド ID を割り当てる必要があります。 PAT を使用するカタログの場合は、PAT をキー コンテナーに保存し、マネージド ID にキー コンテナーのシークレットへのアクセスを許可する必要があります。
デベロッパー センターまたはプロジェクトにカタログをアタッチする前に、マネージド サービス ID (MSI) とも呼ばれるマネージド ID を構成する必要があります。 システム割り当てマネージド ID (システム割り当て MSI) またはユーザー割り当てマネージド ID (ユーザー割り当て MSI) のいずれかをアタッチできます。 次に、そのマネージド ID にロールを割り当てて、デベロッパー センターまたはプロジェクトで、お使いのサブスクリプションに環境の種類を作成し、カタログ リポジトリを含む Azure Repos プロジェクトを読み取ることができるようにします。
デベロッパー センターまたはプロジェクトに MSI がアタッチされていない場合は、「マネージド ID の構成 」の手順に従って作成し、マネージド ID のロールを割り当てます。
マネージド ID の詳細については、「Azure リソースのマネージド ID とは? 」を参照してください
カタログの追加
Azure Repos リポジトリまたは GitHub リポジトリからカタログを追加できます。 MSI にアクセス許可を割り当てて認証するか、キー コンテナー内に保存する PAT を使用して認証するかを選択できます。
使うリポジトリと認証の種類のタブを選びます。
カタログを追加するには、以下のタスクを実行します。
マネージド ID に対して Azure Repos でアクセス許可を割り当てます。
リポジトリをカタログとして追加します。
マネージド ID に対して Azure Repos でアクセス許可を割り当てる
Azure Repos のリポジトリに対するアクセス許可をマネージド ID に付与する必要があります。
Azure DevOps 組織 にサインインします。
Note
Azure DevOps 組織は、デベロッパー センターまたはプロジェクトを含む Azure サブスクリプションと同じディレクトリに存在する必要があります。
[組織の設定] を選択します 。
[概要] ページで [ユーザー] を選択します。
[ユーザー] ページで、[ユーザーの追加] を選択します。
次の情報を入力または選択して [新しいユーザーの追加] を完了し、[追加] を選択します。
名前
値
ユーザーまたはサービス プリンシパル
デベロッパー センターまたはプロジェクトの名前を入力します。 システム割り当て MSI を使用する場合は、マネージド アカウントのオブジェクト ID ではなく、デベロッパー センターまたはプロジェクトの名前を指定します。 ユーザー割り当て MSI を使用する場合は、マネージド アカウントの名前を使用します。
アクセス レベル
[Basic] を選択します。
プロジェクトへの追加
リポジトリを含むプロジェクトを選択します。
Azure DevOps グループ
[プロジェクト閲覧者] を選択します。
メール招待状の送信 (ユーザーに対してのみ)
チェックボックスをオフにします。
リポジトリをカタログとして追加する
Azure Deployment Environments では、Azure Repos リポジトリと GitHub リポジトリのアタッチがサポートされています。 リポジトリには、キュレーションされた一連の IaC テンプレートを格納できます。 リポジトリをカタログとしてデベロッパー センターまたはプロジェクトにアタッチすることで、開発チームはテンプレートにアクセスし、一貫した環境をすばやく作成できるようになります。
次の手順では、Azure Repos リポジトリをアタッチできます。
Azure portal で、デベロッパー センターまたはプロジェクトに移動します。
左側のメニューの [環境の構成] で、[カタログ] を選択し、[追加] を選択します。
[カタログの追加] で、次の情報を入力し、[追加] を選択します。
フィールド
値
名前
カタログの新しい名前を入力します。
カタログの場所
[Azure DevOps] を選択します。
認証の種類
[マネージド ID] を選択します。
組織
Azure DevOps 組織を選択します。
プロジェクト
プロジェクトのリストから、リポジトリを格納するプロジェクトを選択します。
リポジトリ
リポジトリのリストから、追加するリポジトリを選択します。
ブランチ
ブランチを選択します。
フォルダー パス
Dev Box は、ブランチ内のフォルダーのリストを取得します。 IaC テンプレートを格納するフォルダーを選択します。
デベロッパー センターまたはプロジェクトの [カタログ] で、カタログが表示されることを確認します。 接続が成功した場合、[状態] が [Sync successful]\(同期に成功しました\) になります。 初めてカタログに接続する場合、数分かかる場合があります。
カタログを追加するには、以下のタスクを実行します。
Azure Repos リポジトリのクローン URL を取得します。
個人用アクセス トークン (PAT) を作成する。
PAT をキー コンテナー シークレットとして Azure Key Vault に保存する。
リポジトリをカタログとして追加します。
Azure Repos リポジトリのクローン URL を取得する
チーム コレクションのホーム ページ (たとえば、https://contoso-web-team.visualstudio.com
) に移動し、プロジェクトを選択します。
Azure Repos Git リポジトリのクローン URL を取得します 。
URL をコピーして保存します。
Azure Repos で個人用アクセス トークンを作成する
チーム コレクションのホーム ページ (例: https://contoso-web-team.visualstudio.com
) に移動し、プロジェクトを選択します。
PAT を作成します。
後で使用するために生成されたトークンをコピーして保存します。
Key Vault の作成
Azure にリポジトリへのアクセス権を付与するために使用する PAT を格納するには、Azure Key Vault が必要です。 キー コンテナーでは、アクセス ポリシーまたはロールベースのアクセス制御 (RBAC) を使用してアクセスを制御できます。 既存のキー コンテナーがある場合は使用できますが、アクセス ポリシーまたは RBAC 割り当てを使用してアクセスを制御するかどうかをチェックする必要があります。 キー コンテナーのアクセス ポリシーの構成に関するヘルプについては、「Key Vault アクセス ポリシーを割り当てる 」を参照してください。
次の手順に従って RBAC キー コンテナーを作成します。
Azure portal にサインインします。
検索ボックスに「Key Vault 」と入力します。
結果の一覧から [Key Vault] を選択します。
[キー コンテナー] ページで [作成] を選びます。
[キー コンテナーの作成] タブで、以下の情報を指定します。
Name
値
名前
キー コンテナーの名前を入力します。
サブスクリプション
キー コンテナーを作成するサブスクリプションを選びます。
リソース グループ
既存のリソース グループを使うか、[新規作成] を選んでリソース グループの名前を入力します。
場所
キー コンテナーを作成する場所またはリージョンを選びます。
他のオプションは既定値のままにしておきます。
[アクセス ポリシー] タブで、[Azure ロールベースのアクセス制御] を選択した後、[確認と作成] を選択します。
[確認および作成] タブで、 [作成] を選択します。
Key Vault をインターネットに露出させないことが組織のポリシーで義務づけられている場合は、Key Vault の設定で、信頼の置ける Microsoft サービスにファイアウォール規則をバイパスさせることができます。
信頼された Microsoft サービスが Key Vault ファイアウォールをバイパスすることを許可する方法については、「Azure Key Vault のネットワーク設定を構成する 」を参照してください。
個人用アクセス トークンをキー コンテナーに格納する
キー コンテナーの左側のメニューで、[シークレット] を選びます。
[シークレット] ページで、[生成/インポート] を選択します。
[シークレットの作成] ページで以下を実行します。
[名前] ボックスにシークレットのわかりやすい名前を入力します。
[シークレット値] ボックスに先ほどコピーした PAT を貼り付けます。
[作成] を選択します
シークレット識別子を取得する
キー コンテナーに作成したシークレットへのパスを取得します。
Azure portal で、キー コンテナーに移動します。
キー コンテナー ページの左側のメニューで [シークレット] を選びます。
[シークレット] ページで、先ほど作成したシークレットを選択します。
バージョン ページで [現在のバージョン] を選びます。
[現在のバージョン] ページの [シークレット識別子] の [コピー] を選びます。
リポジトリをカタログとして追加する
Azure portal で自分のデベロッパー センターまたはプロジェクトに移動します。
デベロッパー センターまたはプロジェクトにアタッチされている ID が、個人用アクセス トークンが保存されているキー コンテナー シークレットへのアクセス権 を持っていることを確認してください。
左側のメニューの [環境の構成] で、[カタログ] を選択し、[追加] を選択します。
[カタログの追加] で、次の情報を入力し、[追加] を選択します。
フィールド
値
名前
カタログの新しい名前を入力します。
カタログの場所
[Azure DevOps] を選択します。
認証の種類
[個人用アクセス トークン] を選びます。
組織
カタログ リポジトリをホストする組織を選びます。
プロジェクト
カタログ リポジトリを格納するプロジェクトを選びます。
リポジトリ
カタログを格納するリポジトリを選びます。
フォルダー パス
IaC テンプレートを保持するフォルダーを選びます。
シークレット識別子
リポジトリの PAT を含むシークレット識別子を入力します。 シークレット識別子をコピーすると、接続文字列の末尾にバージョン識別子が含まれます。たとえば、https://contoso-kv.vault.azure.net/secrets/GitHub-repo-pat/9376b432b72441a1b9e795695708ea5a
のようになります。 バージョン識別子を削除すると、デプロイ環境でキー コンテナーから最新バージョンのシークレットが確実にフェッチされます。 PAT の有効期限が切れた場合は、キー コンテナーのみを更新する必要があります。 "シークレット識別子の例": https://contoso-kv.vault.azure.net/secrets/GitHub-repo-pat
[カタログ] で、カタログが表示されることを確認します。 接続が成功した場合、[状態] は [接続済み] になります。
カタログを追加するには、以下のタスクを実行します。
Microsoft デベロッパー センター アプリをインストールして構成する
リポジトリのアクセス許可を GitHub で割り当てます。
リポジトリをカタログとして追加します。
Microsoft デベロッパー センター アプリをインストールする
Azure portal にサインインします。
デベロッパー センターまたはプロジェクトに移動します。
左側のメニューの [環境の構成] で、[カタログ] を選択し、[追加] を選択します。
[カタログの追加] ウィンドウで、次のように入力または選択します。
フィールド
値
名前
カタログの新しい名前を入力します。
カタログ ソース
[GitHub] を選択します。
認証の種類
[GitHub アプリ] を選択します。
Microsoft デベロッパー センター アプリをインストールするには、[configure your repositories]\(リポジトリを構成します\) を選択します。
GitHub に対する認証を求められた場合は、認証します。
Microsoft DevCenter ページで、[構成] を選択します。
カタログとして追加するリポジトリを含む GitHub 組織を選択します。 このアプリをインストールするには、組織の所有者である必要があります。
[Install Microsoft DevCenter]\(Microsoft DevCenter のインストール\) ページで、[Only select repositories]\(選択したリポジトリのみ\) を選択し、カタログとして追加するリポジトリを選択して、[インストール] を選択します。
カタログとして追加する複数のリポジトリを選択できます。 リポジトリをカタログとして追加する 方法の説明に従って、各リポジトリを個別のカタログとして追加する必要があります。
[Microsoft DevCenter by Microsoft would like permission to:]\(Microsoft DevCenter by Microsoft が求めるアクセス許可:\) ページで、必要なアクセス許可を確認し、[Authorize Microsoft Dev Center]\(Microsoft デベロッパー センターの承認\) を選択します。
リポジトリをカタログとして追加する
Azure portal に戻ります。
[カタログの追加] で、次の情報を入力し、[追加] を選択します。
フィールド
値
リポジトリ
カタログとして追加するリポジトリを選択します。
Branch
ブランチを選択します。
フォルダー パス
環境定義を保持するサブフォルダーを含むフォルダーを選択します。
[カタログ] で、カタログが表示されることを確認します。 接続が成功した場合、[状態] が [Sync successful]\(同期に成功しました\) になります。
カタログを追加するには、以下のタスクを実行します。
GitHub リポジトリのクローン URL を取得する。
GitHub で個人用アクセス トークン (PAT) を作成する。
PAT をキー コンテナー シークレットとして Azure Key Vault に保存する。
リポジトリをカタログとして追加します。
GitHub リポジトリのクローン URL を取得する
テンプレートの定義が含まれる GitHub リポジトリのホーム ページに移動します。
GitHub リポジトリのクローン URL を取得します 。
URL をコピーして保存します。
GitHub で個人用アクセス トークンを作成する
Azure Deployment Environments では、クラシック トークンか粒度の細かいトークンのどちらかを使用した GitHub リポジトリへの認証がサポートされています。 この例では、粒度の細かいトークンを作成します。
テンプレートの定義が含まれる GitHub リポジトリのホーム ページに移動します。
GitHub の右上隅にあるプロファイル画像を選択し、[Settings] を選択します。
左側のサイドバーで、[開発者向け設定] >[個人用アクセス トークン] >[詳細なトークン] の順に選択します。
[新しいトークンの生成] を選択します。
[新しい粒度の細かい個人用アクセス トークン] ページで、以下の情報を指定します。
Name
値
トークン名
トークンのわかりやすい名前を入力します。
[有効期限]
トークンの有効期限を日数で選択します。
説明
トークンの説明を入力します。
リソース所有者
リポジトリの所有者を選択します。
リポジトリ アクセス
[選択したリポジトリのみ] を選択します。
リポジトリの選択
環境定義を含むリポジトリを選択します。
リポジトリのアクセス許可
[リポジトリのアクセス許可] を展開し、[コンテンツ] で、[アクセス] リストから [コードの読み取り] を選択します。
[Generate token](トークンの生成) を選択します。
後で使用するために生成されたトークンをコピーして保存します。
重要
GitHub 組織内に保存されているプライベート リポジトリを操作する場合は、GitHub PAT が正しい組織とその中のリポジトリに対するアクセスを提供するように構成されていることを確認する必要があります。
組織内のクラシック トークンには、作成後にその特定の組織に対する SSO を承認する必要があります。
粒度の細かいトークンには、承認される組織自体としてトークン セットの所有者が設定されている必要があります。
PAT が正しく構成されていない場合、Repository not found エラーが発生する可能性があります。
Key Vault の作成
Azure にリポジトリへのアクセスを許可するために使用される PAT を保存するための Azure Key Vault が必要です。 キー コンテナーでは、アクセス ポリシーまたはロールベースのアクセス制御 (RBAC) を使用してアクセスを制御できます。 既存のキー コンテナーがある場合は使用できますが、アクセス ポリシーまたは RBAC 割り当てを使用してアクセスを制御するかどうかをチェックする必要があります。 キー コンテナーのアクセス ポリシーの構成に関するヘルプについては、「キー コンテナーに対するアクセス ポリシーの割り当て 」を参照してください。
次の手順に従って RBAC キー コンテナーを作成します。
Azure portal にサインインします。
検索ボックスに「key vault 」と入力します。
結果の一覧から [Key Vault] を選択します。
[キー コンテナー] ページで [作成] を選びます。
[キー コンテナーの作成] タブで、以下の情報を指定します。
Name
値
名前
キー コンテナーの名前を入力します。
サブスクリプション
キー コンテナーを作成するサブスクリプションを選びます。
リソース グループ
既存のリソース グループを使うか、[新規作成] を選んでリソース グループの名前を入力します。
場所
キー コンテナーを作成する場所またはリージョンを選びます。
他のオプションは既定値のままにしておきます。
[アクセス ポリシー] タブで、[Azure ロールベースのアクセス制御] を選択した後、[確認と作成] を選択します。
[確認および作成] タブで、 [作成] を選択します。
Key Vault をインターネットに露出させないことが組織のポリシーで義務づけられている場合は、Key Vault の設定で、信頼の置ける Microsoft サービスにファイアウォール規則をバイパスさせることができます。
信頼された Microsoft サービスが Key Vault ファイアウォールをバイパスすることを許可する方法については、「Azure Key Vault のネットワーク設定を構成する 」を参照してください。
個人用アクセス トークンをキー コンテナーに格納する
キー コンテナーの左側のメニューで、[シークレット] を選びます。
[シークレット] ページで、[生成/インポート] を選択します。
[シークレットの作成] ページで以下を実行します。
[名前] ボックスにシークレットのわかりやすい名前を入力します。
[シークレット値] ボックスに PAT を貼り付けます。
[作成] を選択します
シークレット識別子を取得する
キー コンテナーに作成したシークレットへのパスを取得します。
Azure portal で、キー コンテナーに移動します。
キー コンテナー ページの左側のメニューで [シークレット] を選びます。
[シークレット] ページで、先ほど作成したシークレットを選択します。
バージョン ページで [現在のバージョン] を選びます。
[現在のバージョン] ページの [シークレット識別子] の [コピー] を選びます。
リポジトリをカタログとして追加する
Azure portal で自分のデベロッパー センターまたはプロジェクトに移動します。
デベロッパー センターまたはプロジェクトにアタッチされているマネージド ID が、個人用アクセス トークンが保存されているキー コンテナー シークレットへのアクセス権 を持っていることを確認してください。
左側のメニューの [環境の構成] で、[カタログ] を選択し、[追加] を選択します。
[カタログの追加] で、以下の情報を入力した後、[追加] を選択します。
フィールド
値
名前
カタログの新しい名前を入力します。
カタログの場所
[GitHub] を選択します。
リポジトリ
GitHub リポジトリまたは Azure Repos リポジトリのクローン URL を入力するか貼り付けます。 "サンプル カタログの例": https://github.com/Azure/deployment-environments.git
Branch
接続先のリポジトリ ブランチを入力します。 "サンプル カタログの例": main
フォルダー パス
環境定義のサブフォルダーが含まれるフォルダーの、クローン URI を基準とするパスを入力します。 フォルダー パスは、環境定義環境ファイルを含んでいるサブフォルダーを含んでいるフォルダーへのパスであり、環境定義環境ファイルを含んでいるフォルダーそのものへのパスではありません。 次の図は、カタログ フォルダー構造のサンプルを示しています。 "サンプル カタログの例": /Environments
フォルダー パスの先頭のスラッシュ (/
) は付けても付けなくても構いません。
シークレット識別子
リポジトリの PAT を含むシークレット識別子を入力します。 シークレット識別子をコピーすると、接続文字列の末尾にバージョン識別子が含まれます。たとえば、https://contoso-kv.vault.azure.net/secrets/GitHub-repo-pat/9376b432b72441a1b9e795695708ea5a
のようになります。 バージョン識別子を削除すると、Deployment Environments でキー コンテナーから最新バージョンのシークレットが確実にフェッチされます。 PAT の有効期限が切れた場合は、キー コンテナーのみを更新する必要があります。 "シークレット識別子の例": https://contoso-kv.vault.azure.net/secrets/GitHub-repo-pat
[カタログ] で、カタログが表示されることを確認します。 接続が成功した場合、[状態] が [Sync successful]\(同期に成功しました\) になります。
同期されたカタログ項目を表示する
使用するリポジトリの種類に関係なく、カタログから同期されているカタログ項目を表示できます。
デベロッパー センターまたはプロジェクトの左側のメニューの [環境の構成] で、[カタログ] を選択します。
[カタログ] ウィンドウで、カタログ名を選択します。
正常に同期されたカタログ項目の一覧が表示されます。
カタログを更新する
アタッチされたリポジトリ内の定義またはテンプレート コンテンツを更新する場合は、カタログを同期することで、開発チームに最新の環境定義のセットを提供できます。 カタログは手動または自動で同期できます。
手動でカタログを同期する
カタログを手動で同期すると、Deployment Environments によってリポジトリがスキャンされ、環境定義の最新のリストをデベロッパー センター内のすべての関連プロジェクトが利用できるようになります。
デベロッパー センターの左側のメニューの [環境の構成] で、[カタログ] を選択します。
特定のカタログを選んでから、コマンド バーの [同期] を選びます。
自動的にカタログを同期する
カタログを自動的に同期するように構成すると、Deployment Environments によって 30 分ごとにリポジトリがスキャンされ、環境定義の最新のリストをデベロッパー センター内のすべての関連プロジェクトが利用できるようになります。
デベロッパー センターまたはプロジェクトの左側のメニューの [環境の構成] で、[カタログ] を選択します。
特定のカタログを選んでから、[編集] を選びます。
[カタログの編集] ウィンドウで、[このカタログを自動的に同期する] を選択し、[保存] を選択します。
カタログを削除する
カタログを削除して、Azure Deployment Environments デベロッパー センターまたはプロジェクトから削除できます。 削除されたカタログ内のテンプレートは、開発チームが新しい環境をデプロイするときに使用できません。 削除したカタログ内の環境定義を使って作成した既存の環境がある場合は、環境定義の参照を更新します。 参照が更新されておらず、環境が再デプロイされた場合、デプロイは失敗します。
カタログを削除するには:
デベロッパー センターまたはプロジェクトの左側のメニューの [環境の構成] で、[カタログ] を選択します。
特定のカタログを選んでから、[削除] を選びます。
[カタログの削除] ダイアログで、[続行] を選択してカタログを削除します。
カタログ同期エラーのトラブルシューティング
カタログを追加または同期するときに、同期エラーまたは警告が発生する場合があります。 同期エラーは、カタログが正常に同期できなかったことを示します。同期警告は、一部またはすべてのカタログ項目にエラーがあることを示します。 Azure portal で同期の状態とエラーを表示するか、Azure CLI と REST API を使用してエラーのトラブルシューティングと解決を行うことができます。
カタログの同期状態を表示する
Azure portal で、状態リンクを選択すると、カタログの同期状態と警告またはエラーに関する詳細情報を取得できます。 状態リンクにより、同期の状態、追加された環境定義の数、無視されたまたは失敗した環境定義の数を示すウィンドウが表示されます。
カタログ同期の失敗を表示する
デベロッパー センターまたはプロジェクトの左側のメニューの [環境の構成] で、[カタログ] を選択します。
[状態] 列で、同期に失敗したカタログの状態リンクを選択します。
最後の同期の変更、同期エラーの数、エラーの種類を示す詳細ウィンドウが表示されます。
カタログ同期の警告を表示する
デベロッパー センターまたはプロジェクトの左側のメニューの [環境の構成] で、[カタログ] を選択します。
[状態] 列で、同期したが警告を報告したカタログの状態リンクを選択します。
最後の同期の変更、項目エラーの数、各エラーの種類とソースを示す詳細ウィンドウが表示されます。
同様に同期エラーを報告するカタログから、正常に同期されたアイテムを表示できます。 [カタログ] ウィンドウで、カタログ名を選択します。
正常に同期されたカタログ項目の一覧が表示されます。
Azure CLI を使用したカタログ同期エラーのトラブルシューティング
Azure CLI または REST API を使用してカタログの GET を行います。 GET の応答には、以下のようなエラーの種類が表示されます。
重複が検出され、無視された環境定義。
スキーマ、参照、または検証エラーにより失敗した無効な環境定義。
無視された環境定義エラーを解決する
同じ名前の環境定義を複数追加すると、無視された環境定義エラーが発生します。 この問題を解決するには、環境定義の名前を変更して、各環境定義がカタログ内で一意の名前になるようにします。
無効な環境定義エラーを解決する
無効な環境定義エラーは、さまざまな理由で発生する可能性があります。
マニフェスト スキーマ エラー 。 環境定義環境ファイルが必要なスキーマ と一致していることを確認します。
検証エラー。 検証エラーを解決するには、次の項目を確認します。
環境ファイルのエンジンの種類が、正しく構成されていることを確認します。
環境定義名は 3 文字から 63 文字にする必要があります。
必ず、環境定義名には、URL として有効な文字 (英数字と記号 ~
!
,
.
'
;
:
=
-
_
+
(
)
*
&
$
@
) のみを含めます。
参照エラー 。 環境ファイルによって参照されているテンプレート パスが、リポジトリ内のファイルに対する有効な相対パスであることを確認します。
関連するコンテンツ