Compartir a través de


Inicio rápido: Integración de Bicep con Azure Pipelines

En este inicio rápido se muestra cómo integrar archivos de Bicep con Azure Pipelines para la integración continua y la implementación continua.

Se brinda una breve introducción a la tarea de canalización que necesita para implementar un archivo Bicep. Para obtener pasos más detallados sobre cómo configurar la canalización y el proyecto, consulte el módulo Implementación de recursos de Azure mediante Bicep y Azure Pipelines Microsoft Learn.

Prerrequisitos

Si no tiene una suscripción de Azure, cree una cuenta gratuita antes de comenzar.

También necesita una organización de Azure DevOps. Si no tiene ninguna, cree una gratis. Si el equipo ya tiene una organización de Azure DevOps, asegúrese de que es administrador del proyecto de Azure DevOps que desea usar.

Debe haber configurado una conexión de servicio a la suscripción de Azure. Las tareas en la canalización se ejecutan con la identidad de la entidad de servicio. Para ver los pasos para crear la conexión, consulte Creación de un proyecto de DevOps.

Necesita un archivo de Bicep que defina la infraestructura del proyecto. Este archivo está en un repositorio.

Necesita un archivo '.bicepparam' que defina los parámetros que usa el archivo de Bicep. Este archivo está en un repositorio.

Creación de una canalización

  1. En la organización de Azure DevOps, seleccione Canalizaciones y Crear canalización.

    Captura de pantalla de la creación de una nueva canalización.

  2. Especifique dónde se almacena el código. En esta guía de inicio rápido se utilizan los repositorios Git de Azure Repos.

    Captura de pantalla de la selección del código fuente.

  3. Seleccione el repositorio que tiene el código del proyecto.

    Captura de pantalla de la selección del repositorio.

  4. Seleccione Canalización de inicio para el tipo de canalización que se va a crear.

    Captura de pantalla de la selección de la canalización.

Implementación de archivos de Bicep

Puede usar una tarea implementación del grupo de recursos de Azure o una tarea de la CLI de Azure para implementar un archivo de Bicep.

Uso de la tarea de implementación de plantillas de Azure Resource Manager

Nota:

A partir de la tarea de implementación de plantillas de Azure Resource Manager versión 3.235.0, se admite el uso de archivos ".bicepparam ".

Nota:

La tarea AzureResourceManagerTemplateDeployment@3 requiere que se proporcionen archivos Bicep y .bicepparam al usar .bicepparam. El archivo Bicep puede hacer referencia a todas las ubicaciones admitidas para las referencias de módulo. El archivo .bicepparam debe hacer referencia al archivo Bicep local en la instrucción using.

  1. Reemplace la canalización de inicio por el siguiente código YAML. Usa la tarea de implementación de plantillas de Azure Resource Manager para crear un grupo de recursos e implementar un archivo Bicep y .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. Actualice los valores de azureServiceConnection y location.

  3. Compruebe que tiene un archivo válido main.bicep en el repositorio.

  4. Compruebe que dispone de un main.bicepparam archivo válido en su repositorio que contiene una declaración using.

  5. Haga clic en Guardar. La canalización de compilación se ejecuta automáticamente. Vuelva al resumen de la canalización de compilación y vea el estado.

Uso de una tarea de la CLI de Azure

Nota:

El az deployment group create comando solo requiere un bicepparam. archivo. La instrucción using en el archivo .bicepparam puede tener como destino cualquier ubicación admitida para hacer referencia al archivo de Bicep. Un archivo de Bicep solo es necesario en el repositorio cuando using se aplica desde una ruta de acceso de disco local con la CLI de Azure.

Nota:

Cuando se usa un .bicepparam archivo con el az deployment group create comando , no se pueden invalidar los parámetros.

  1. Reemplace la canalización de inicio por el siguiente código YAML. Crea un grupo de recursos e implementa un .bicepparam archivo mediante una tarea de la CLI de 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
    

    Para ver las descripciones de las entradas de tarea, consulte Tarea de la CLI v2 de Azure. Al usar la tarea en la nube aislada, debe establecer la propiedad useGlobalConfig de la tarea en true. El valor predeterminado es false.

  2. Actualice los valores de azureServiceConnection y location.

  3. Compruebe que tiene un archivo válido main.bicepparam en el repositorio que contiene una using declaración.

  4. Haga clic en Guardar. La canalización de compilación se ejecuta automáticamente. Vuelva al resumen de la canalización de compilación y vea el estado.

Limpieza de recursos

Cuando los recursos de Azure ya no sean necesarios, use la CLI de Azure o Azure PowerShell para eliminar el grupo de recursos de inicio rápido.

az group delete --name exampleRG

Pasos siguientes