Share via


Azure CLI を使用して、Azure Deployment Environments でデベロッパー センターを作成して構成する

このクイックスタートでは、Azure Deployment Environments でデベロッパー センターを作成して構成する方法について説明します。

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

前提条件

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

Azure Deployment Environments でデベロッパー センターを作成して構成するには、次の手順を実行します。

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

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

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

    az account set --subscription <subscriptionName>
    
  4. デベロッパー センターを作成する既定の場所を構成します。 必ず Azure Deployment Environments に使用可能なリージョンを選択してください。

    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"
    }
    

Note

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

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

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

  1. キー コンテナーの作成:

    # Change the name to something Globally unique
    az keyvault create -n <keyvaultName>
    

    Note

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

  2. GitHub PAT をシークレットとして Key Vault に追加します。

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

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

デベロッパー センターを作成した後で、デベロッパー センターに ID をアタッチします。 システム割り当てマネージド ID またはユーザー割り当てマネージド ID をアタッチできます。 2 種類の ID について説明します。

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

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

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

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

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

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

  1. デベロッパー センターの ID のオブジェクト ID を取得します。

    OID=$(az ad sp list --display-name <devcenterName> --query [].id -o tsv)
    echo $OID
    
  2. Key Vault ポリシーを追加して、デベロッパー センターで Key Vault からシークレットを取得できるようにします。

    az keyvault set-policy -n <keyvaultName> --secret-permissions get --object-id $OID
    

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

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

このクイックスタートでは、Azure Deployment Environments チームが作成および保守するサンプルを含む GitHub リポジトリをアタッチします。

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

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

カタログを追加するには、GitHub リポジトリの URL、ブランチ、環境定義が格納されているフォルダーを指定する必要があります。 この情報は、デベロッパー センターにカタログを追加するプロセスを始める前に集めておくことができます。

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

ヒント

Azure DevOps リポジトリをアタッチする場合は、Azure DevOps リポジトリのクローン URL の取得に関する記事の手順に従います。

  1. リポジトリに移動して、[<> コード] を選択し、クローン URL をコピーします。

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

  3. 環境定義が格納されているフォルダーをメモします。

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

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

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

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

    # Sample catalog example
    REPO_URL="https://github.com/Azure/deployment-environments.git"
    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、カタログ、環境の種類で構成しました。 プロジェクトを作成して構成する方法については、次のクイックスタートに進んでください。