Ler em inglês

Compartilhar via


AzureCLI@2 – Tarefa da CLI do Azure v2

Execute comandos da CLI do Azure em uma assinatura do Azure em um script do PowerShell Core/shell ao executar no agente do Linux. Ou execute comandos da CLI do Azure em uma assinatura do Azure por meio de um script do PowerShell/PowerShell Core/em lote ao executar no agente Windows.

Execute comandos da CLI do Azure em uma assinatura do Azure em um script do PowerShell Core/shell ao executar no agente do Linux. Ou execute comandos da CLI do Azure em uma assinatura do Azure em um script do PowerShell/Powershell Core/batch ao ser executado no agente do Windows.

Sintaxe

# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/PowerShell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
    #visibleAzLogin: true # boolean. az login output visibility. Default: true.
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/PowerShell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/Powershell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.

Entradas

azureSubscription - de conexão do Azure Resource Manager
Alias de entrada: connectedServiceNameARM. string. Obrigatório

Selecione uma conexão de serviço do Azure Resource Manager para a implantação.


scriptType - tipo de script
string. Obrigatório Valores permitidos: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Tipo de script. Selecione um script bash ou pscore ao executar no agente do Linux. Ou selecione um script batch, psou pscore ao executar no agente do Windows. Um script pscore pode ser executado em agentes multiplataforma (Linux, macOS ou Windows).


scriptType - tipo de script
string. Obrigatório Valores permitidos: ps (Powershell), pscore (Powershell Core), batch, bash (Shell).

Tipo de script. Selecione um script bash ou pscore ao executar no agente do Linux. Ou selecione um script batch, psou pscore ao executar no agente do Windows. Um script pscore pode ser executado em agentes multiplataforma (Linux, macOS ou Windows).


de local do script scriptLocation -
string. Obrigatório Valores permitidos: inlineScript (script embutido), scriptPath (caminho de script). Valor padrão: scriptPath.

Caminho para o script.


scriptPath - caminho de script
string. Necessário quando scriptLocation = scriptPath.

Caminho totalmente qualificado do script. Use .ps1, .batou .cmd ao usar o agente baseado no Windows. Use .ps1 ou .sh ao usar o agente baseado em Linux ou um caminho relativo ao diretório de trabalho padrão.


inlineScript - script embutido
string. Necessário quando scriptLocation = inlineScript.

Você pode escrever seus scripts embutidos aqui. Ao usar o agente do Windows, use o PowerShell, o PowerShell Core ou o script em lote. Use o PowerShell Core ou o script de shell ao usar agentes baseados em Linux. Para arquivos em lote, use o prefixo call antes de cada comando do Azure. Você também pode passar variáveis predefinidas e personalizadas para esse script usando argumentos.

Veja a seguir um exemplo de PowerShell/PowerShellCore/shell.

az --version 
az account show 

Veja a seguir um exemplo de lote.

call  az --version 
call az account show

argumentos de script arguments -
Alias de entrada: scriptArguments. string.

Argumentos passados para o script.


ErrorActionPreference powerShellErrorActionPreference -
string. Opcional. Use quando scriptType = ps || scriptType = pscore. Valores permitidos: stop, continue, silentlyContinue. Valor padrão: stop.

Acrescenta a linha $ErrorActionPreference = 'VALUE' na parte superior do script do PowerShell/PowerShell Core.


detalhes da entidade de serviço do addSpnToEnvironment - Access no script
boolean. Valor padrão: false.

Adiciona a ID da entidade de serviço, a chave da entidade de serviço ou o token de federação de identidade de carga de trabalho e a ID do locatário do ponto de extremidade do Azure que você escolheu para o ambiente de execução do script. Você pode usar as variáveis servicePrincipalId, servicePrincipalKey ou idTokene tenantId no script.

Isso é honrado somente quando o ponto de extremidade do Azure tem esquema de autenticação de entidade de serviço ou esquema de autenticação de federação de identidade de carga de trabalho.

A lista a seguir mostra a sintaxe para acessar variáveis de ambiente com base no tipo de script.

  • Sintaxe de script do PowerShell: $env:servicePrincipalId

  • Sintaxe de script em lote: %servicePrincipalId%

  • Sintaxe de script do Shell: $servicePrincipalId


useGlobalConfig - Usar a configuração global da CLI do Azure
boolean. Valor padrão: false.

Se essa entrada for falsa, essa tarefa usará seu próprio diretório de configuração da CLI do Azure . Use essa tarefa para executar tarefas da CLI do Azure em versões paralelas de.


do Diretório de Trabalho do workingDirectory -
Alias de entrada: cwd. string.

Diretório de trabalho atual em que o script é executado. Se estiver em branco, essa entrada será a raiz do repositório (build) ou artefatos (versão), que é $(System.DefaultWorkingDirectory).


failOnStandardError - falha no de erro padrão
boolean. Valor padrão: false.

Se essa entrada for verdadeira, essa tarefa falhará quando quaisquer erros forem gravados no fluxo StandardError. Desmarque a caixa de seleção para ignorar erros padrão e, em vez disso, confie em códigos de saída para determinar o status.


powerShellIgnoreLASTEXITCODE - ignorar $LASTEXITCODE
boolean. Opcional. Use quando scriptType = ps || scriptType = pscore. Valor padrão: false.

Se essa entrada for falsa, a linha if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } será acrescentada ao final do script. Isso propagará o último código de saída de um comando externo como o código de saída do PowerShell. Caso contrário, a linha não será acrescentada ao final do script.


visibleAzLogin - az login output visibility
boolean. Valor padrão: true.

Se isso for definido como true, o comando az login será enviado para a tarefa. Defini-lo como false suprimirá a saída de logon az.


Opções de controle de tarefa

Todas as tarefas têm opções de controle além das suas entradas de tarefas. Para obter mais informações, consulte as opções de Controle de e as propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Observações

Novidades na versão 2.0 da tarefa versão 2.0

  • Suporte para script do PowerShell e do PowerShell Core.
  • O PowerShell Core funciona com agentes multiplataforma (Linux, macOS ou Windows), verifique se o agente tem o PowerShell versão 6 ou mais.
  • O script do PowerShell funciona apenas com o agente do Windows, verifique se o agente tem o PowerShell versão 5 ou inferior.

Pré-requisitos

  • Uma assinatura do Microsoft Azure.
  • Conexão de serviço do ARM (Azure Resource Manager) à sua conta do Azure.
  • Agentes hospedados pela Microsoft tem a CLI do Azure pré-instalada. No entanto, se você estiver usando agentes privados, instale a CLI do Azure nos computadores que executarem o build e o agente de versão. Se um agente já estiver em execução no computador em que a CLI do Azure está instalada, reinicie o agente para garantir que todas as variáveis de fase relevantes sejam atualizadas.

Exemplos

O exemplo a seguir lista a versão da CLI do Azure e obtém os detalhes da assinatura.

- task: AzureCLI@2
  displayName: Azure CLI
  inputs:
    azureSubscription: <Name of the Azure Resource Manager service connection>
    scriptType: ps
    scriptLocation: inlineScript
    inlineScript: |
      az --version
      az account show

O exemplo a seguir ilustra como passar argumentos para o script.

  • Passando argumentos para scripts embutidos:

    - task: AzureCLI@2
      inputs:
        azureSubscription: <Azure_Resource_Manager_Service_Connection>
        scriptType: 'ps'
        scriptLocation: 'inlineScript'
        arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)'
        inlineScript: './scripts/publish.ps1 $1 $2'
    
  • Passando argumentos com o caminho do script:

    - task: AzureCLI@2
      inputs:
        azureSubscription: <Azure_Resource_Manager_Service_Connection>
        scriptType: 'ps'
        scriptLocation: 'scriptPath'
        arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)'
        scriptPath: './scripts/publish.ps1'
    

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Execuções em Agent, DeploymentGroup
de demandas Nenhum
recursos Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
restrições de comando Qualquer
variáveis settable Qualquer
Versão do agente 2.0.0 ou superior
Categoria de tarefa Implantar

Consulte também