AzureResourceManagerTemplateDeployment@3 - Tarefa v3 de implantação de modelo ARM
Use esta tarefa para implantar um modelo do Azure Resource Manager (ARM) em todos os escopos de implantação.
Sintaxe
# 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 (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template link.
#csmParametersFileLink: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template parameters link.
#csmFile: # string. Required when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. Template.
#csmParametersFile: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. 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 (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template link.
#csmParametersFileLink: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template parameters link.
#csmFile: # string. Required when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. Template.
#csmParametersFile: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. 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.
Insumos
deploymentScope
-
Escopo de implantação
string
. Necessário. Valores permitidos: Management Group
, Subscription
, Resource Group
. Valor padrão: Resource Group
.
O escopo da implantação. Saiba mais sobre escopos de implantação.
azureResourceManagerConnection
-
de conexão do Azure Resource Manager
Alias de entrada: ConnectedServiceName
.
string
. Necessário.
Especifica a conexão de serviço do Azure Resource Manager com acesso ao escopo de implantação selecionado.
subscriptionId
-
Subscrição
Alias de entrada: subscriptionName
.
string
. Necessário quando deploymentScope != Management Group
.
Especifica a assinatura do Azure.
Importante
O valor especificado deve ser o ID da assinatura e não o nome da assinatura.
action
-
Ação
string
. Necessário quando deploymentScope = Resource Group
. Valores permitidos: Create Or Update Resource Group
, DeleteRG
(Excluir grupo de recursos). Valor padrão: Create Or Update Resource Group
.
A ação a ser executada nos recursos ou grupo de recursos do Azure.
resourceGroupName
-
Grupo de recursos
string
. Necessário quando deploymentScope = Resource Group
.
Fornece o nome de um grupo de recursos.
location
-
Localização
string
. Necessário quando action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Escopos de implantação do Grupo de Recursos: o local para implantar o grupo de recursos. Se o grupo de recursos já existir na assinatura do Azure, esse valor será ignorado. Outros escopos de implantação: o local para armazenar metadados de implantação.
templateLocation
-
Localização do modelo
string
. Necessário quando action = Create Or Update Resource Group || deploymentScope != Resource Group
. Valores permitidos: Linked artifact
, URL of the file
. Valor padrão: Linked artifact
.
O local dos arquivos JSON Template e Parameters. Escolha artefato vinculado se os arquivos fizerem parte do código/artefatos de construção vinculados. Para artefatos vinculados, você também pode especificar o caminho para um arquivo Bicep. Escolha URL do arquivo se os arquivos JSON estiverem localizados em qualquer URL http/https acessível publicamente. Para usar um arquivo armazenado em uma conta de armazenamento privado, recupere e inclua o token de assinatura de acesso compartilhado (SAS) na URL do modelo. Exemplo: <blob_storage_url>/template.json?
. Para carregar um arquivo de parâmetros em uma conta de armazenamento e gerar um token SAS, você pode usar de tarefa de cópia de arquivo do Azure ou seguir as etapas usando PowerShell ou da CLI do Azure.
csmFileLink
-
Link do modelo
string
. Necessário quando (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file
.
Especifica a URL do arquivo de modelo. Um exemplo de URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json
Para implantar um modelo armazenado em uma conta de armazenamento privado, recupere e inclua o token de assinatura de acesso compartilhado (SAS) na URL do modelo. Exemplo: <blob_storage_url>/template.json?<SAStoken>
. Para carregar um arquivo de modelo (ou um modelo vinculado) para uma conta de armazenamento e gerar um token SAS, use a tarefa cópia de arquivo do Azure ou siga as etapas usando PowerShell ou da CLI do Azure.
Para exibir os parâmetros do modelo em uma grade, clique em ...
ao lado da caixa de texto Substituir parâmetros do modelo. Esse recurso requer que as regras CORS estejam habilitadas na origem. Se os modelos estiverem em um blob de armazenamento do Azure, consulte de compartilhamento de recursos entre origens para habilitar o CORS.
csmParametersFileLink
-
Parâmetros do modelo de link
string
. Opcional. Use quando (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file
.
Especifica a URL do arquivo de parâmetros. Um exemplo de URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json
Para usar um arquivo armazenado em uma conta de armazenamento privado, recupere e inclua o token de assinatura de acesso compartilhado (SAS) na URL do modelo. Exemplo: <blob_storage_url>/template.json?<SAStoken>
. Para carregar um arquivo de modelo (ou um modelo vinculado) para uma conta de armazenamento e gerar um token SAS, use a tarefa cópia de arquivo do Azure ou siga as etapas usando PowerShell ou da CLI do Azure.
Para exibir os parâmetros do modelo em uma grade, clique em ...
ao lado da caixa de texto Substituir parâmetros do modelo. Esse recurso requer que as regras CORS estejam habilitadas na origem. Se os modelos estiverem em um blob de armazenamento do Azure, consulte de compartilhamento de recursos entre origens para habilitar o CORS.
csmFile
-
Modelo
string
. Necessário quando (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact
.
Especifica o caminho ou um padrão que aponta para o modelo do Azure Resource Manager. Saiba mais sobre modelos do Azure Resource Manager. Para começar imediatamente, use este modelo de exemplo. Suporta ficheiros Bicep quando a versão da CLI do Azure > 2.20.0.
csmParametersFile
-
Parâmetros do modelo
string
. Opcional. Use quando (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact
.
Especifique o caminho ou um padrão apontando para o arquivo de parâmetros para o modelo do Azure Resource Manager. Suporta ficheiros Bicep Param quando a versão da CLI do Azure > 2.47.0.
overrideParameters
-
Substituir parâmetros de modelo
string
. Opcional. Use quando action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Especifica os parâmetros do modelo a serem substituídos.
Para exibir os parâmetros do modelo em uma grade, clique em ...
ao lado da caixa de texto Substituir parâmetros. Esse recurso requer que as regras CORS estejam habilitadas na origem. Se os modelos estiverem no blob de armazenamento do Azure, faça referência a essa cadeia de caracteres para habilitar o CORS ou digite os parâmetros do modelo a serem substituídos na caixa de texto.
Exemplo: -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre)
.
Se o valor do parâmetro tiver várias palavras, coloque as palavras entre aspas, mesmo que você esteja passando o valor usando variáveis.
Por exemplo, -name "parameter value" -name2 "$(var)"
.
Para substituir parâmetros de tipo de objeto, use objetos JSON stringificados.
Por exemplo, -options ["option1"] -map {"key1": "value1" }
.
deploymentMode
-
Modo de implantação
string
. Necessário quando action = Create Or Update Resource Group || deploymentScope != Resource Group
. Valores permitidos: Incremental
, Complete
, Validation
(somente validação). Valor padrão: Incremental
.
O modo Incremental
lida com implantações como atualizações incrementais para o grupo de recursos. Ele deixa inalterados os recursos que existem no grupo de recursos, mas não são especificados no modelo.
Complete
modo exclui recursos que não estão no seu modelo. O modo completo leva relativamente mais tempo do que o modo incremental. Se o tempo limite da tarefa expirar, considere aumentar o tempo limite ou mudar para o modo Incremental
.
Advertência
O modo Concluído excluirá todos os recursos existentes no grupo de recursos que não estão especificados no modelo. Analise se o grupo de recursos no qual você está implantando não contém recursos necessários que não estejam especificados no modelo.
Validate
modo permite que você encontre problemas com o modelo antes de criar recursos reais.
Observação
O modo Validate
sempre cria um grupo de recursos, mesmo que nenhum recurso seja implantado.
Saiba mais sobre modos de implantação.
deploymentName
-
Nome da implantação
string
. Opcional. Use quando action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Especifica o nome da implantação do grupo de recursos a ser criada.
deploymentOutputs
-
Saídas de implantação
string
. Opcional. Use quando action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Fornece um nome para a variável para a variável de saída, que contém a seção outputs do objeto de implantação atual em formato de cadeia de caracteres. Você pode usar o cmdlet ConvertFrom-Json
PowerShell para analisar o objeto JSON e acessar os valores de saída individuais. Saiba mais sobre saídas de implantação.
addSpnToEnvironment
-
Acessar detalhes da entidade de serviço em parâmetros de substituição
boolean
. Opcional. Use quando action = Create Or Update Resource Group || deploymentScope != Resource Group
. Valor padrão: false
.
Adiciona a ID da entidade de serviço e a chave do ponto de extremidade do Azure escolhido para ser o ambiente de execução do script. As variáveis $servicePrincipalId
e $servicePrincipalKey
podem estar em parâmetros de substituição, como -key $servicePrincipalKey
.
useWithoutJSON
-
Use valores de saída individuais sem JSON. Stringify aplicado
boolean
. Opcional. Use quando action = Create Or Update Resource Group || deploymentScope != Resource Group
. Valor padrão: false
.
Os valores de saída individuais estão sendo convertidos via JSON. Stringify por padrão. Se você quiser usar os valores de saída como está sem convertê-los via JSON. Stringify, habilite esta opção. Para obter mais detalhes, consulte este.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhuma.
Comentários
Observação
Esta tarefa suporta ficheiros Bicep quando a versão da CLI do Azure > 2.20.0.
- Adicionado suporte para implantação em todos os escopos de implantação.
- Removidas todas as ações relacionadas à VM.
Requerimentos
Exigência | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.119.1 ou superior |
Categoria de tarefa | Implantar |