Guida introduttiva: Integrare Bicep con Azure Pipelines
Questa guida introduttiva illustra come integrare i file Bicep con Azure Pipelines per l'integrazione continua e la distribuzione continua (CI/CD).
Offre una breve introduzione all'attività della pipeline necessaria per la distribuzione di un file Bicep. Per istruzioni più dettagliate sulla configurazione della pipeline e del progetto, vedere Distribuire le risorse di Azure usando Bicep e Azure Pipelines.
Prerequisiti
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
È necessaria un'organizzazione di Azure DevOps. Se non è disponibile, crearne uno gratuitamente. Se il team ha già un'organizzazione di Azure DevOps, assicurarsi di essere un amministratore del progetto Azure DevOps che si vuole usare.
È necessario aver configurato una connessione al servizio alla sottoscrizione di Azure. Le attività nella pipeline vengono eseguite con l'identità dell'entità servizio. Per la procedura per creare la connessione, vedere Creare un progetto DevOps.
È necessario un file Bicep che definisce l'infrastruttura per il progetto. Questo file si trova in un repository.
È necessario un file bicepparam che definisce i parametri usati dal file bicep. Questo file si trova in un repository.
Creare una pipeline
Nell'organizzazione di Azure DevOps selezionare Pipeline e Crea pipeline.
Specificare dove è archiviato il codice. Questo argomento di avvio rapido usa Git di Azure Repos.
Selezionare il repository con il codice per il progetto.
Selezionare Starter pipeline (Pipeline iniziale) per il tipo di pipeline da creare.
Distribuire file Bicep
È possibile usare l'attività Distribuzione gruppo di risorse di Azure o l'attività dell'interfaccia della riga di comando di Azure per distribuire un file Bicep.
Usare l'attività Distribuzione modelli di Azure Resource Manager
Nota
A partire dalla versione 3.235.0 dell'attività Distribuzione modelli di Azure Resource Manager, è supportato l'utilizzo dei file bicepparam.
Nota
L'attività AzureResourceManagerTemplateDeployment@3
richiede sia i file Bicep che i file bicepparam quando si usa bicepparam. Il file Bicep può fare riferimento a tutti i percorsi supportati per i riferimenti ai moduli. Il file bicepparam deve fare riferimento al file Bicep locale nell'istruzione using
.
Sostituire la pipeline iniziale con il codice YAML seguente. Crea un gruppo di risorse e distribuisce un file Bicep e bicepparam usando l'attività Distribuzione modelli di Azure Resource Manager.
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' azureSubscription: '${{ parameters.azureServiceConnection }}' 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'
Aggiornare i valori di
azureServiceConnection
elocation
.Verificare di avere un file valido
main.bicep
nel repository.Verificare di avere un file valido
main.bicepparam
nel repository che contiene un'istruzione using .Seleziona Salva. La pipeline di compilazione viene eseguita automaticamente. Tornare al riepilogo per la pipeline di compilazione e osservare lo stato.
Usare l'attività dell'interfaccia della riga di comando di Azure
Nota
Il comando az deployment group create richiede solo un file bicepparam. L'istruzione using
nel file bicepparam può avere come destinazione qualsiasi percorso supportato per fare riferimento al file Bicep. Un file Bicep è necessario solo nel repository quando using
da un percorso del disco locale con l'interfaccia della riga di comando di Azure.
Nota
Quando si usa un file bicepparam con il comando az deployment group create , non è possibile eseguire l'override dei parametri.
Sostituire la pipeline iniziale con il codice YAML seguente. Crea un gruppo di risorse e distribuisce un file bicepparam usando un'attività dell'interfaccia della riga di comando di Azure:
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
Per le descrizioni degli input dell'attività, vedere Attività dell'interfaccia della riga di comando di Azure. Quando si usa l'attività nel cloud con gapped air, è necessario impostare la
useGlobalConfig
proprietà dell'attività sutrue
. Il valore predefinito èfalse
.Aggiornare i valori di
azureServiceConnection
elocation
.Verificare di avere un file valido
main.bicepparam
nel repository che contiene un'istruzione using .Seleziona Salva. La pipeline di compilazione viene eseguita automaticamente. Tornare al riepilogo per la pipeline di compilazione e osservare lo stato.
Pulire le risorse
Quando le risorse di Azure non sono più necessarie, usare l'interfaccia della riga di comando di Azure o Azure PowerShell per eliminare il gruppo di risorse di avvio rapido.
az group delete --name exampleRG