Udostępnij za pośrednictwem


Szybki start: integracja rozwiązania Bicep z usługą Azure Pipelines

W tym przewodniku Szybki start pokazano, jak zintegrować pliki Bicep z usługą Azure Pipelines w celu ciągłej integracji i ciągłego wdrażania.

Zawiera krótkie wprowadzenie do zadania przepływu pracy potrzebnego do wdrożenia pliku Bicep. Aby uzyskać bardziej szczegółowe instrukcje dotyczące konfigurowania potoku i projektu, zobacz moduł Microsoft Learn Wdrażanie zasobów platformy Azure przy użyciu Bicep i Azure Pipelines.

Wymagania wstępne

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Potrzebna jest również organizacja usługi Azure DevOps. Jeśli go nie masz, utwórz go bezpłatnie. Jeśli Twój zespół ma już organizację usługi Azure DevOps, upewnij się, że jesteś administratorem projektu usługi Azure DevOps, którego chcesz użyć.

Musisz skonfigurować połączenie usługi z subskrypcją platformy Azure. Zadania w potoku są wykonywane w ramach tożsamości jednostki usługi. Aby uzyskać instrukcje tworzenia połączenia, zobacz Tworzenie projektu DevOps.

Potrzebny jest plik Bicep , który definiuje infrastrukturę projektu. Ten plik znajduje się w repozytorium.

Potrzebny jest plik ".bicepparam" , który definiuje parametry używane przez plik Bicep. Ten plik znajduje się w repozytorium.

Utwórz pipeline

  1. W organizacji usługi Azure DevOps wybierz pozycję Potoki i Utwórz potok.

    Zrzut ekranu przedstawiający tworzenie nowego potoku.

  2. Określ miejsce przechowywania kodu. W tym przewodniku Quickstart używane są repozytoria Git w Azure Repos.

    Zrzut ekranu przedstawiający wybieranie źródła kodu.

  3. Wybierz repozytorium zawierające kod projektu.

    Zrzut ekranu przedstawiający wybieranie repozytorium.

  4. Wybierz pozycję Potok początkowy dla typu potoku do utworzenia.

    Zrzut ekranu przedstawiający wybieranie potoku.

Wdrażanie plików Bicep

Możesz użyć zadania wdrożeniowego grupy zasobów Azure lub zadania Azure CLI, aby wdrożyć plik Bicep.

Korzystanie z zadania wdrażania szablonu usługi Azure Resource Manager

Uwaga

W przypadku zadania wdrażania szablonu usługi Azure Resource Manager w wersji 3.235.0 użycie plików ".bicepparam" jest obsługiwane.

Uwaga

Zadanie AzureResourceManagerTemplateDeployment@3 wymaga podania zarówno plików Bicep, jak i .bicepparam podczas używania polecenia .bicepparam. Plik Bicep może odwoływać się do wszystkich obsługiwanych lokalizacji dla odwołań do modułów. Plik .bicepparam musi odwoływać się do lokalnego pliku Bicep w instrukcji using .

  1. Zastąp swój początkowy pipeline następującym kodem YAML. Używa zadania wdrażania szablonu usługi Azure Resource Manager w celu utworzenia grupy zasobów i wdrożenia pliku Bicep oraz .bicepparam.

    trigger:
    - main
    
    name: Deploy Bicep files
    
    parameters:
    - name: azureServiceConnection
      type: string
      default: '<your-connection-name>'
    
    variables:
      vmImageName: 'ubuntu-latest'
      resourceGroupName: 'exampleRG'
      location: '<your-resource-group-location>'
      templateFile: './main.bicep'
      csmParametersFile: './main.bicepparam'
    
    pool:
      vmImage: $(vmImageName)
    
    steps:
    - task: AzureResourceManagerTemplateDeployment@3
      inputs:
        deploymentScope: 'Resource Group'
        action: 'Create Or Update Resource Group'
        resourceGroupName: '$(resourceGroupName)'
        location: '$(location)'
        templateLocation: 'Linked artifact'
        csmFile: '$(templateFile)'
        csmParametersFile: '$(csmParametersFile)'
        overrideParameters: '-storageAccountType Standard_LRS'
        deploymentMode: 'Incremental'
        deploymentName: 'DeployPipelineTemplate'
        connectedServiceName: '${{ parameters.azureServiceConnection }}'
    
  2. Zaktualizuj wartości azureServiceConnection i location.

  3. Sprawdź, czy masz prawidłowy main.bicep plik w repozytorium.

  4. Sprawdź, czy w repozytorium znajduje się prawidłowy main.bicepparam plik zawierający instrukcję using .

  5. Wybierz Zapisz. Potok kompilacji jest uruchamiany automatycznie. Wróć do podsumowania swojego potoku kompilacji i obserwuj jego status.

Użyj zadania Azure CLI

Uwaga

Polecenie az deployment group create wymaga tylko bicepparam. pliku. Instrukcja using w pliku .bicepparam może wskazywać dowolną obsługiwaną lokalizację, aby odwołać się do pliku Bicep. Plik Bicep jest wymagany w repozytorium tylko wtedy, gdy korzystasz z lokalnej ścieżki dysku za pomocą Azure CLI.

Uwaga

Podczas używania pliku .bicepparam z poleceniem az deployment group create nie można nadpisać parametrów.

  1. Zastąp potok początkowy następującym kodem YAML. Tworzy grupę zasobów i wdraża plik .bicepparam przy użyciu zadania Azure CLI:

    trigger:
    - main
    
    name: Deploy Bicep files
    
    parameters:
      azureServiceConnection: '<your-connection-name>'
    
    variables:
      vmImageName: 'ubuntu-latest'
      resourceGroupName: 'exampleRG'
      location: '<your-resource-group-location>'
      bicepParamFile: './main.bicepparam'
    
    pool:
      vmImage: $(vmImageName)
    
    steps:
    - task: AzureCLI@2
      inputs:
        azureSubscription: '${{ parameters.azureServiceConnection }}'
        scriptType: bash
        scriptLocation: inlineScript
        useGlobalConfig: false
        inlineScript: |
          az --version
          az group create --name $(resourceGroupName) --location $(location)
          az deployment group create `
            --resource-group $(resourceGroupName) `
            --parameters $(bicepParamFile) `
            --name DeployPipelineTemplate
    

    Opisy danych wejściowych zadań można znaleźć w Azure CLI v2 task. Korzystając z zadania w odizolowanej chmurze, należy ustawić useGlobalConfig właściwość zadania na true. Wartość domyślna to false.

  2. Zaktualizuj wartości azureServiceConnection i location.

  3. Upewnij się, że masz w repozytorium prawidłowy plik main.bicepparam zawierający instrukcję using.

  4. Wybierz Zapisz. Potok kompilacji jest uruchamiany automatycznie. Wróć do podsumowania potoku kompilacji i obejrzyj stan.

Czyszczenie zasobów

Gdy zasoby platformy Azure nie są już potrzebne, użyj interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell, aby usunąć grupę zasobów szybkiego startu.

az group delete --name exampleRG

Następne kroki