次の方法で共有


Azure CLI を使用して Azure デプロイ環境用のデベロッパー センターを作成して構成する

このクイック スタートでは、Azure デプロイ環境でデベロッパー センターを作成して構成します。

通常、プラットフォーム エンジニアリング チームはデベロッパー センターを設定し、外部カタログをデベロッパー センターにアタッチし、プロジェクトを作成し、開発チームにアクセスできるようにします。 開発チームは、 環境 定義を使用して 環境を作成し、個々のリソースに接続し、アプリケーションをデプロイできます。

前提条件

カテゴリ 必要条件
紺碧 - Azure サブスクリプション
- サブスクリプション内のリソース ( 共同作成者所有者など) を作成および管理するためのアクセス許可を持つ Azure ロールベースのアクセス制御ロール。
- Azure CLI 開発センター拡張機能
GitHub GitHub アカウントと、リポジトリ アクセスを持つ 個人用アクセス トークン

デベロッパー センターを作成する

Azure デプロイ環境でデベロッパー センターを作成して構成するには:

  1. Azure CLI にサインインします。

    az login
    
  2. Azure CLI 開発センター 拡張機能をインストールします。

    az extension add --name devcenter --upgrade
    
  3. 既定のサブスクリプションを、デベロッパー センターを作成するサブスクリプションとして構成します。

    az account set --subscription <subscriptionName>
    
  4. デベロッパー センターを作成する既定の場所を構成します。 必ず、Azure デプロイ環境をサポートするリージョンを選択してください。

    az configure --defaults ___location=eastus
    
  5. デベロッパー センターを作成するリソース グループを作成します。

    az group create -n <resourceGroupName>
    
  6. 既定のリソース グループを、作成したリソース グループとして構成します。

    az config set defaults.group=<resourceGroupName>
    
  7. デベロッパー センターを作成します。

    az devcenter admin devcenter create -n <devcenterName>
    

    数分後、出力はデベロッパー センターが作成されたことを示します。

    {
       "devCenterUri": "https://...",
       "id": "/subscriptions/.../<devcenterName>",
       "___location": "eastus",
       "name": "<devcenter name>",
       "provisioningState": "Succeeded",
       "resourceGroup": "<resourceGroupName>",
       "systemData": {
          "createdAt": "...",
          "createdBy": "...",
          ...
       },
       "type": "microsoft.devcenter/devcenters"
    }
    

コマンド、受け入れ可能な引数、例の詳細を表示するには、--help を使用します。 たとえば、 az devcenter admin devcenter create --help を使用して、デベロッパー センターの作成に関する詳細を表示します。

Azure Key Vault に個人用アクセス トークンを追加する

GitHub リポジトリへのアクセス権を Azure に付与するために使用される GitHub 個人用アクセス トークン (PAT) を格納するには、Azure Key Vault が必要です。

  1. キー コンテナーを作成します。

    # Use a globally unique name
    az keyvault create -n <keyvaultName>
    

    次のエラーが発生する場合があります。 Code: VaultAlreadyExists Message: The vault name 'kv-devcenter' is already in use. Vault names are globally unique so it is possible that the name is already taken. グローバルに一意のキー コンテナー名を使用する必要があります。

  2. Key Vault シークレット オフィサー RBAC ロールを自分に割り当てます。

    az role assignment create --assignee <YourPrincipalId> --role "Key Vault Secrets Officer" --scope /subscriptions/<YourSubscriptionId>/resourceGroups/<YourResourceGroupName>/providers/Microsoft.KeyVault/vaults/<YourKeyVaultName>
    
    
  3. GitHub PAT をシークレットとして Key Vault に追加します。

    az keyvault secret set --vault-name <keyvaultName> --name GHPAT --value <personalAccessToken> 
    

デベロッパー センターに ID をアタッチする

デベロッパー センターを作成したら、デベロッパー センターに ID を アタッチします。 システム割り当てマネージド ID またはユーザー割り当てマネージド ID をアタッチできます。 詳細については、「 マネージド ID の追加」を参照してください。

このクイックスタートでは、デベロッパー センター用にシステム割り当てマネージド ID を構成します。

システム割り当てマネージド ID をアタッチする

システム割り当てマネージド ID をデベロッパー センターにアタッチします。

az devcenter admin devcenter update -n <devcenterName> --identity-type SystemAssigned

システム割り当てマネージド ID にキー コンテナー シークレットへのアクセス権を付与する

ID が、リポジトリにアクセスするための GitHub PAT を含むキー コンテナー シークレットにアクセスできることを確認します。 キー コンテナーでは、Azure ロールベースのアクセス制御 (RBAC) とコンテナー アクセス ポリシーの 2 つのアクセス方法がサポートされています。 このクイック スタートでは、RBAC を使用します。

az role assignment create --role "Key Vault Secrets Officer" --assignee <devCenterManagedIdentityObjectID> --scope /subscriptions/<subscriptionID>/resourcegroups/<resourceGroupName>/providers/Microsoft.KeyVault/vaults/<keyVaultName>

デベロッパー センターにカタログを追加する

Azure Deployment Environment では、Azure DevOps リポジトリと GitHub リポジトリのアタッチがサポートされています。 リポジトリには、キュレーションされた一連の IaC テンプレートを格納できます。 リポジトリをカタログとしてデベロッパー センターにアタッチすると、開発チームはテンプレートにアクセスでき、一貫性のある環境をすばやく作成できます。

このクイックスタートでは、Azure デプロイ環境チームによって作成および管理されたサンプルを含む GitHub リポジトリをアタッチします。

デベロッパー センターにカタログを追加するには、まずいくつかの情報を収集する必要があります。

GitHub リポジトリ情報を収集する

カタログを追加するには、GitHub リポジトリの URL、ブランチ、環境定義を含むフォルダーを指定する必要があります。 この情報は、デベロッパー センターにカタログを追加するプロセスを開始する前に収集できます。

この サンプル カタログ はリポジトリとして使用できます。 次の手順でリポジトリのフォークを作成します。

ヒント

Azure DevOps リポジトリをアタッチする場合は、次の手順を使用します。 Azure DevOps リポジトリの複製 URL を取得します。

  1. リポジトリに移動し、 <> Code を選択し、複製 URL をコピーします。

  2. 作業しているブランチをメモしておきます。

  3. 環境定義を含むフォルダーを書き留めます。

    ブランチ、コピー URL、フォルダーが強調表示されている GitHub リポジトリを示すスクリーンショット。

デベロッパー センターにカタログを追加する

  1. シークレット識別子を取得します。

    $SECRETID = az keyvault secret show --vault-name <keyvaultName> --name GHPAT --query id -o tsv
    Write-Output $SECRETID
    
  2. カタログを追加します。

    # Sample catalog example
    $REPO_URL = "<clone URL that you copied earlier>"
    az devcenter admin catalog create --git-hub path="/Environments" branch="main" secret-identifier=$SECRETID uri=$REPO_URL -n <catalogName> -d <devcenterName>
    
  3. カタログが正常に追加され、同期されたことを確認します。

    az devcenter admin catalog list -d <devcenterName> -o table
    

環境の種類を作成する

環境の種類を使用すると、開発チームがデプロイできるさまざまな種類の環境を定義するのに役立ちます。 環境の種類ごとに異なる設定を適用できます。

  1. 環境の種類を作成します。

    az devcenter admin environment-type create -d <devcenterName> -n <environmentTypeName> 
    
  2. 環境の種類が作成されたことを確認します。

    az devcenter admin environment-type list -d <devcenterName> -o table 
    

次のステップ

このクイックスタートでは、デベロッパー センターを作成し、これを ID、カタログ、環境の種類で構成しました。 プロジェクトを作成して構成する方法については、次のクイックスタートに進んでください。