Condividi tramite


AzureCLI@2 - compito interfaccia della riga di comando di Azure v2

Esegui comandi interfaccia della riga di comando di Azure su un abbonamento Azure in uno script PowerShell Core/shell quando si esegue su un agente Linux. Oppure, eseguire comandi interfaccia della riga di comando di Azure su un abbonamento Azure in uno script PowerShell/PowerShell Core/batch quando si esegue su un agente Windows.

Sintassi

# 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.

Ingressi dati

azureSubscription - Azure Resource Manager connessione
Alias di input: connectedServiceNameARM. string. Obbligatorio.

Seleziona una connessione di servizio Azure Resource Manager per il deployment.


scriptType - tipo di script
string. Obbligatorio. Valori consentiti: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Tipo di script. Selezionare uno script bash o pscore durante l'esecuzione nell'agente Linux. Oppure, seleziona uno script batch, ps o pscore quando esegui su Windows agente. Uno script pscore può funzionare su agenti multipiattaforma (Linux, macOS o Windows).


scriptLocation - percorso script
string. Obbligatorio. Valori consentiti: inlineScript (script inline), scriptPath (percorso script). Valore predefinito: scriptPath

Percorso dello script.


scriptPath - percorso script
string. Obbligatorio quando scriptLocation = scriptPath.

Percorso completo dello script. Usa .ps1, .bat o .cmd quando usi un agente basato su Windows. Usare .ps1 o .sh quando si usa l'agente basato su Linux o un percorso relativo alla directory di lavoro predefinita.


inlineScript - script inline
string. Obbligatorio quando scriptLocation = inlineScript.

È possibile scrivere gli script inline qui. Quando usi l'agente Windows, usa PowerShell, PowerShell Core o scripting batch. Usare PowerShell Core o lo scripting della shell quando si usano agenti basati su Linux. Per i file batch, usa il prefisso call prima di ogni comando Azure. È anche possibile passare variabili predefinite e personalizzate a questo script usando argomenti.

Di seguito è riportato un esempio per PowerShell/PowerShellCore/shell.

az --version 
az account show 

Di seguito è riportato un esempio di batch.

call  az --version 
call az account show

argomenti script arguments -
Alias di input: scriptArguments. string.

Argomenti passati allo script.


powerShellErrorActionPreference - ErroreAzionePreferenza
string. Opzionale. Usare quando scriptType = ps || scriptType = pscore. Valori consentiti: stop, continue, silentlyContinue. Valore predefinito: stop

Antepone la riga $ErrorActionPreference = 'VALUE' nella parte superiore dello script di PowerShell/PowerShell Core.


addSpnToEnvironment - accedere ai dettagli dell'entità servizio nello script
boolean. Valore predefinito: false

Aggiunge l'ID del principale del servizio, la chiave del principale del servizio o il token di federazione dell'identità del carico di lavoro e l'ID tenant dell'endpoint Azure scelto all'ambiente di esecuzione dello script. È possibile usare le variabili servicePrincipalId, servicePrincipalKey o idTokene tenantId nello script.

Questo viene rispettato solo quando l'endpoint Azure dispone di uno schema di autenticazione del principale di servizio o dello schema di autenticazione della federazione dell'identità del carico di lavoro.

L'elenco seguente mostra la sintassi per accedere alle variabili di ambiente in base al tipo di script.

  • Sintassi dello script di PowerShell: $env:servicePrincipalId

  • Sintassi dello script batch: %servicePrincipalId%

  • Sintassi dello script della shell: $servicePrincipalId


useGlobalConfig - Usa la configurazione globale interfaccia della riga di comando di Azure
boolean. Valore predefinito: false

Se questo input è falso, questa task utilizzerà la propria directory di configurazione interfaccia della riga di comando di Azure. Usa questo compito per eseguire interfaccia della riga di comando di Azure compiti nelle release parallelo.


workingDirectory - directory di lavoro
Alias di input: cwd. string.

Directory di lavoro corrente in cui viene eseguito lo script. Se lasciato vuoto, questo input è la radice del repository (build) o degli artefatti (versione), che è $(System.DefaultWorkingDirectory).


failOnStandardError - errore standard
boolean. Valore predefinito: false

Se questo input è true, questa attività avrà esito negativo quando vengono scritti errori nel flusso StandardError. Deselezionare la casella di controllo per ignorare gli errori standard e basarsi invece sui codici di uscita per determinare lo stato.


powerShellIgnoreLASTEXITCODE - Ignora $LASTEXITCODE
boolean. Opzionale. Usare quando scriptType = ps || scriptType = pscore. Valore predefinito: false

Se questo input è false, la riga if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } viene aggiunta alla fine dello script. Verrà propagato l'ultimo codice di uscita da un comando esterno come codice di uscita di PowerShell. In caso contrario, la riga non viene aggiunta alla fine dello script.


visibleAzLogin - Visibilità dell'output di accesso az
boolean. Valore predefinito: true

Se è impostato su true, il comando az login restituirà l'attività. L'impostazione su false elimina l'output az login.


Opzioni di controllo delle attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Nessuno.

Osservazioni:

Novità dell'attività Versione versione 2.0

  • Supporto per script PowerShell e PowerShell Core.
  • PowerShell Core funziona con agenti multipiattaforma (Linux, macOS o Windows), assicurati che l'agente abbia PowerShell versione 6 o superiore.
  • Lo script Powershell funziona solo con l'agente Windows, assicurati che l'agente abbia PowerShell versione 5 o inferiore.

Prerequisiti

  • Un abbonamento Microsoft Azure.
  • Azure Resource Manager connessione servizio al tuo account Azure.
  • Gli agenti ospitati Microsoft hanno interfaccia della riga di comando di Azure preinstallata. Tuttavia, se usi agenti privati, installa interfaccia della riga di comando di Azure sul computer o sui computer che eseguono l'agente di build e release. Se un agente è già in esecuzione sulla macchina su cui è installata la interfaccia della riga di comando di Azure, riavvia l'agente per assicurarti che tutte le variabili rilevanti dello stadio siano aggiornate.

Esempi

Il seguente esempio elenca la versione di interfaccia della riga di comando di Azure e fornisce i dettagli dell'abbonamento.

- 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

Nell'esempio seguente viene illustrato come passare argomenti allo script.

  • Passaggio di argomenti agli script inline:

    - 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'
    
  • Passaggio di argomenti con il percorso dello 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'
    

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Viene eseguito in Agente, DeploymentGroup
richieste Nessuno
funzionalità di Questa attività non soddisfa alcuna richiesta di attività successive nel processo.
restrizioni dei comandi Qualunque
variabili impostabili Qualunque
Versione dell'agente 2.0.0 o versione successiva
Categoria attività Distribuire

Vedere anche