Compartir a través de


AzureResourceManagerTemplateDeployment@3: tarea de implementación de plantillas de ARM v3

Use esta tarea para implementar una plantilla de Azure Resource Manager (ARM) en todos los ámbitos de implementación.

Syntax

# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
  inputs:
  # Azure Details
    deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
    azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection. 
    #subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription. 
    #action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
    #resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group. 
    #location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location. 
  # Template
    #templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
    #csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link. 
    #csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link. 
    #csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template. 
    #csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters. 
    #overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters. 
    #deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
  # Advanced
    #deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name. 
    #deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs. 
    #addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
    #useWithoutJSON: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Use individual output values without JSON.Stringify applied. Default: false.
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
  inputs:
  # Azure Details
    deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
    azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection. 
    #subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription. 
    #action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
    #resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group. 
    #location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location. 
  # Template
    #templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
    #csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link. 
    #csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link. 
    #csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template. 
    #csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters. 
    #overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters. 
    #deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
  # Advanced
    #deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name. 
    #deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs. 
    #addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.

Entradas

deploymentScope - Ámbito de implementación
string. Obligatorio. Valores permitidos: Management Group, Subscription y Resource Group. Valor predeterminado: Resource Group.

Ámbito de la implementación. Obtenga más información sobre los ámbitos de implementación.


azureResourceManagerConnection - Conexión de Azure Resource Manager
Alias de entrada: ConnectedServiceName. string. Obligatorio.

Especifica la conexión de servicio de Azure Resource Manager con acceso al ámbito de implementación seleccionado.


subscriptionId - Suscripción
Alias de entrada: subscriptionName. string. Necesario cuando deploymentScope != Management Group.

Especifica la suscripción de Azure.

Importante

El valor especificado debe ser el identificador de suscripción y no el nombre de la suscripción.


action - Acción
string. Necesario cuando deploymentScope = Resource Group. Valores permitidos: Create Or Update Resource Group, DeleteRG (Eliminar grupo de recursos). Valor predeterminado: Create Or Update Resource Group.

Acción que se va a realizar en los recursos de Azure o en el grupo de recursos.


resourceGroupName - Grupo de recursos
string. Necesario cuando deploymentScope = Resource Group.

Proporciona el nombre de un grupo de recursos.


location - Ubicación
string. Necesario cuando action = Create Or Update Resource Group || deploymentScope != Resource Group.

Ámbitos de implementación del grupo de recursos: la ubicación para implementar el grupo de recursos. Si el grupo de recursos ya existe en la suscripción de Azure, se omitirá este valor. Otros ámbitos de implementación: la ubicación para almacenar los metadatos de implementación.


templateLocation - Ubicación de la plantilla
string. Necesario cuando action = Create Or Update Resource Group || deploymentScope != Resource Group. Valores permitidos: Linked artifact, URL of the file. Valor predeterminado: Linked artifact.

Ubicación de los archivos JSON Template y Parameters. Elija Artefacto vinculado si los archivos forman parte del código vinculado o artefactos de compilación. En el caso de los artefactos vinculados, también puede especificar la ruta de acceso a un archivo de Bicep. Elija la dirección URL del archivo si los archivos JSON se encuentran en cualquier dirección URL http/https de acceso público. Para usar un archivo almacenado en una cuenta de almacenamiento privada, recupere e incluya el token de firma de acceso compartido (SAS) en la dirección URL de la plantilla. Ejemplo: <blob_storage_url>/template.json?. Para cargar un archivo de parámetros en una cuenta de almacenamiento y generar un token de SAS, puede usar la tarea de copia de archivos de Azure o seguir los pasos que se indican con PowerShell o la CLI de Azure.


csmFileLink - Vínculo de plantilla
string. Necesario cuando templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifica la dirección URL del archivo de plantilla. Una dirección URL de ejemplo: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json

Para implementar una plantilla almacenada en una cuenta de almacenamiento privada, recupere e incluya el token de firma de acceso compartido (SAS) en la dirección URL de la plantilla. Ejemplo: <blob_storage_url>/template.json?<SAStoken>. Para cargar un archivo de plantilla (o una plantilla vinculada) en una cuenta de almacenamiento y generar un token de SAS, use la tarea de copia de archivos de Azure o siga los pasos que se indican mediante PowerShell o la CLI de Azure.

Para ver los parámetros de plantilla en una cuadrícula, haga clic en junto ... al cuadro de texto Invalidar parámetros de plantilla. Esta característica requiere que las reglas CORS estén habilitadas en el origen. Si las plantillas están en un blob de Azure Storage, consulte Uso compartido de recursos entre orígenes para habilitar CORS.


csmParametersFileLink - Vínculo de parámetros de plantilla
string. Opcional. Use cuando templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifica la dirección URL del archivo de parámetros. Una dirección URL de ejemplo: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json

Para usar un archivo almacenado en una cuenta de almacenamiento privada, recupere e incluya el token de firma de acceso compartido (SAS) en la dirección URL de la plantilla. Ejemplo: <blob_storage_url>/template.json?<SAStoken>. Para cargar un archivo de plantilla (o una plantilla vinculada) en una cuenta de almacenamiento y generar un token de SAS, use la tarea de copia de archivos de Azure o siga los pasos que se indican mediante PowerShell o la CLI de Azure.

Para ver los parámetros de plantilla en una cuadrícula, haga clic en junto ... al cuadro de texto Invalidar parámetros de plantilla. Esta característica requiere que las reglas CORS estén habilitadas en el origen. Si las plantillas están en un blob de Azure Storage, consulte Uso compartido de recursos entre orígenes para habilitar CORS.


csmFile - Plantilla
string. Necesario cuando templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifica la ruta de acceso o un patrón que apunta a la plantilla de Azure Resource Manager. Obtenga más información sobre las plantillas de Azure Resource Manager. Para empezar inmediatamente, use esta plantilla de ejemplo. Admite archivos de Bicep cuando la CLI de Azure versión > 2.20.0.


csmParametersFile - Parámetros de plantilla
string. Opcional. Use cuando templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifique la ruta de acceso o un patrón que apunte al archivo de parámetros de la plantilla de Azure Resource Manager. Admite archivos param de Bicep cuando la CLI de Azure versión > 2.47.0.


overrideParameters - Invalidar parámetros de plantilla
string. Opcional. Use cuando action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifica los parámetros de plantilla que se van a invalidar.

Para ver los parámetros de plantilla en una cuadrícula, haga clic en junto ... al cuadro de texto Invalidar parámetros. Esta característica requiere que las reglas CORS estén habilitadas en el origen. Si las plantillas están en el blob de Azure Storage, haga referencia a esta cadena para habilitar CORS o escriba los parámetros de plantilla que se van a invalidar en el cuadro de texto.

Ejemplo: -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre).

Si el valor del parámetro tiene varias palabras, incluya las palabras entre comillas, aunque pase el valor mediante variables. Por ejemplo, -name "parameter value" -name2 "$(var)". Para invalidar parámetros de tipo de objeto, use objetos JSON con cadena. Por ejemplo, -options ["option1"] -map {"key1": "value1" }.


deploymentMode - Modo de implementación
string. Necesario cuando action = Create Or Update Resource Group || deploymentScope != Resource Group. Valores permitidos: Incremental, Complete, Validation (solo validación). Valor predeterminado: Incremental.

El Incremental modo controla las implementaciones como actualizaciones incrementales del grupo de recursos. Deja sin modificar recursos que existen en el grupo de recursos, pero que no se especifican en la plantilla.

El modo Complete elimina los recursos que no están en la plantilla. El modo completo tarda relativamente más tiempo que el modo incremental. Si la tarea agota el tiempo de espera, considere la posibilidad de aumentar el tiempo de espera o cambiar al Incremental modo.

Advertencia

El modo completo eliminará todos los recursos existentes del grupo de recursos que no se especifican en la plantilla. Revise si el grupo de recursos en el que va a implementar no contiene los recursos necesarios que no se especifican en la plantilla. El modo Validate permite encontrar problemas con la plantilla antes de crear recursos reales.

Nota

El Validate modo siempre crea un grupo de recursos, incluso si no se implementa ningún recurso. Obtenga más información sobre los modos de implementación.


deploymentName - Nombre de implementación
string. Opcional. Use cuando action = Create Or Update Resource Group || deploymentScope != Resource Group.

Especifica el nombre de la implementación del grupo de recursos que se va a crear.


deploymentOutputs - Salidas de implementación
string. Opcional. Use cuando action = Create Or Update Resource Group || deploymentScope != Resource Group.

Proporciona un nombre para la variable para la variable de salida, que contiene la sección de salidas del objeto de implementación actual en formato de cadena. Puede usar el ConvertFrom-Json cmdlet de PowerShell para analizar el objeto JSON y acceder a los valores de salida individuales. Obtenga más información sobre las salidas de implementación.


addSpnToEnvironment - Obtener acceso a los detalles de la entidad de servicio en los parámetros de invalidación
boolean. Opcional. Use cuando action = Create Or Update Resource Group || deploymentScope != Resource Group. Valor predeterminado: false.

Agrega el identificador de la entidad de servicio y la clave del punto de conexión de Azure elegido para ser el entorno de ejecución del script. Las variables $servicePrincipalId y $servicePrincipalKey pueden estar en parámetros de invalidación, como -key $servicePrincipalKey.


useWithoutJSON - Use valores de salida individuales sin JSON. Stringify aplicado
boolean. Opcional. Use cuando action = Create Or Update Resource Group || deploymentScope != Resource Group. Valor predeterminado: false.

Los valores de salida individuales se convierten a través de JSON. Stringify de forma predeterminada. Si quiere usar los valores de salida tal y como está sin convertirlos a través de JSON. Stringify, habilite esta opción. Para obtener más información, consulte esto.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Comentarios

Nota

Esta tarea admite archivos de Bicep cuando la CLI de Azure versión > 2.20.0.

  • Se ha agregado compatibilidad con la implementación en todos los ámbitos de implementación.
    • Se han quitado todas las acciones relacionadas con la máquina virtual.

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente 2.119.1 o superior
Categoría de la tarea: Implementación