演習 - Bicep ファイルを Azure Pipelines からデプロイする

完了

ローカル環境からリソースを検証、コンパイル、デプロイする方法を確認したら、それを拡張し、 それを Azure Pipeline に取り込んでデプロイ プロセスをさらに効率化する方法を確認します。

必須コンポーネント

Azure サブスクリプションが必要になります。持っていない場合は、始める前に無料アカウントを作成してください。

また、Azure DevOps 組織も必要です。 同様に、お持ちでない場合は、 無料で作成してください

Azure サブスクリプションにリンクされている構成済みのサービス接続がプロジェクトに存在する必要があります。 これまでこれを行ったことがない場合は心配しないでください。パイプラインを作成するときに簡単に行う方法を紹介します。

また、先ほど作成した Bicep ファイルをプロジェクトの Azure リポジトリ にプッシュする必要があります。

パイプラインの作成

新しいパイプラインを作成する

  1. Azure DevOps プロジェクト内から、[パイプライン] と [新しいパイプライン] を選択します。

  2. Azure Repos Git (YAML) を選択し、ソースとして Azure Repo を指定します。

    Azure Repo からの新しい Azure パイプラインのスクリーンショット。

  3. テンプレートの一覧から スターター パイプライン を選択します。

    スターター パイプライン テンプレートのスクリーンショット。

パイプライン YAML を構成する

  1. スターター パイプライン ファイル内のすべてを次のスニペットに置き換えます。

    trigger:
      - main
    
    name: Deploy Bicep files
    
    variables:
      vmImageName: "ubuntu-latest"
    
      azureServiceConnection: "myServiceConnection"
      resourceGroupName: "Bicep"
      location: "eastus"
      templateFile: "main.bicep"
    pool:
      vmImage: $(vmImageName)
    
    steps:
      - task: AzureCLI@2
        inputs:
          azureSubscription: $(azureServiceConnection)
          scriptType: bash
          scriptLocation: inlineScript
          inlineScript: |
            az --version
            az group create --name $(resourceGroupName) --location $(location)
            az deployment group create --resource-group $(resourceGroupName) --template-file $(templateFile)
    

パイプラインについて

この YAML パイプラインでは、次の処理が実行されます。

  • トリガー: コードが main ブランチにプッシュされると、自動的に実行されます。

  • 変数: パイプラインの再利用可能な値を定義します。

    • vmImageName: ビルド エージェント イメージ (Ubuntu) を指定します。
    • azureServiceConnection: Azure サービス接続の名前。
    • resourceGroupName: デプロイのターゲット リソース グループ。
    • location: リソースの Azure リージョン。
    • templateFile: Bicep ファイルへのパス。
  • プール: 指定した Ubuntu 仮想マシン イメージを使用します。

  • AzureCLI タスク:Azure CLI コマンドを実行します。

    • az --version: Azure CLI のバージョンを確認します。
    • az group create: リソース グループを作成します。
    • az deployment group create: Bicep テンプレートをデプロイします。

    azureServiceConnectionの値をサービス接続名に置き換えることを忘れないでください。

保存と実行

  1. [保存して実行] を選択して、パイプライン YAML ファイルを含む新しいコミットをリポジトリに作成し、パイプラインを実行します。 パイプラインの実行が完了するまで待ち、状態を確認します。

    Azure DevOps の成功したジョブのスクリーンショット。

デプロイを検証する

  1. パイプラインが正常に実行されると、 Azure portal でリソース グループとストレージ アカウントを確認できるようになります。

    Bicep によって作成されたリソース グループのスクリーンショット。