Sdílet prostřednictvím


AzureCLI@2 – úloha Azure CLI v2

Při spuštění v agentu Linuxu spusťte příkazy Azure CLI pro předplatné Azure ve skriptu PowerShellu Core/shellu. Nebo spusťte příkazy Azure CLI pro předplatné Azure v PowerShellu, PowerShellu Core nebo dávkovém skriptu při spuštění v agentu Windows.

Při spuštění v agentu Linuxu spusťte příkazy Azure CLI pro předplatné Azure ve skriptu PowerShellu Core/shellu. Nebo spusťte příkazy Azure CLI pro předplatné Azure v PowerShellu, PowerShellu Core nebo dávkovém skriptu při spuštění v agentu Windows.

Syntaxe

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

Vstupy

azureSubscription - připojení Azure Resource Manageru
Vstupní alias: connectedServiceNameARM. string. Povinné.

Vyberte připojení služby Azure Resource Manager pro nasazení.


scriptType - typ skriptu
string. Povinné. Povolené hodnoty: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Typ skriptu. Vyberte bash nebo pscore skript při spuštění v agentu linuxu. Nebo vyberte batch, psnebo pscore skript při spuštění v agentu pro Windows. Skript pscore může běžet na multiplatformních agentech (Linux, macOS nebo Windows).


scriptType - typ skriptu
string. Povinné. Povolené hodnoty: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Typ skriptu. Vyberte bash nebo pscore skript při spuštění v agentu linuxu. Nebo vyberte batch, psnebo pscore skript při spuštění v agentu pro Windows. Skript pscore může běžet na multiplatformních agentech (Linux, macOS nebo Windows).


umístění skriptu scriptLocation -
string. Povinné. Povolené hodnoty: inlineScript (vložený skript), scriptPath (cesta ke skriptu). Výchozí hodnota: scriptPath.

Cesta ke skriptu


cesta ke skriptu scriptPath -
string. Požadováno při scriptLocation = scriptPath.

Plně kvalifikovaná cesta skriptu. Při použití agenta se systémem Windows použijte .ps1, .batnebo .cmd. Při použití agenta založeného na Linuxu nebo cesty vzhledem k výchozímu pracovnímu adresáři použijte .ps1 nebo .sh.


inlineScript - vložený skript
string. Požadováno při scriptLocation = inlineScript.

Skripty můžete napsat přímo tady. Při použití agenta pro Windows použijte PowerShell, PowerShell Core nebo dávkové skriptování. Použití PowerShellu Core nebo skriptování prostředí při použití agentů založených na Linuxu Pro dávkové soubory použijte před každým příkazem Azure předponu call. Předdefinované a vlastní proměnné můžete do tohoto skriptu předat také pomocí argumentů.

Následuje příklad prostředí PowerShell/PowerShellCore/shell.

az --version 
az account show 

Následuje příklad pro dávku.

call  az --version 
call az account show

arguments - argumenty skriptu
Vstupní alias: scriptArguments. string.

Argumenty předané skriptu.


powerShellErrorActionPreference - ErrorActionPreference
string. Volitelný. Používá se při scriptType = ps || scriptType = pscore. Povolené hodnoty: stop, continue, silentlyContinue. Výchozí hodnota: stop.

Předpne řádek $ErrorActionPreference = 'VALUE' v horní části skriptu PowerShellu nebo PowerShellu Core.


addSpnToEnvironment - podrobností o instančním objektu accessu ve skriptu
boolean. Výchozí hodnota: false.

Přidá ID instančního objektu, klíč instančního objektu nebo federační token identity úlohy a ID tenanta koncového bodu Azure, který jste zvolili, do spouštěcího prostředí skriptu. Ve skriptu můžete použít proměnné servicePrincipalId, servicePrincipalKey nebo idTokena tenantId.

Toto se respektuje jenom v případě, že koncový bod Azure má schéma ověřování instančního objektu nebo schéma ověřování federace identit úloh.

Následující seznam ukazuje syntaxi pro přístup k proměnným prostředí na základě typu skriptu.

  • Syntaxe skriptu PowerShellu: $env:servicePrincipalId

  • Syntaxe dávkového skriptu: %servicePrincipalId%

  • Syntaxe skriptu prostředí: $servicePrincipalId


useGlobalConfig - použití globální konfigurace Azure CLI
boolean. Výchozí hodnota: false.

Pokud je tento vstup false, bude tato úloha používat vlastní konfigurační adresář Azure CLI. Pomocí této úlohy můžete spouštět úlohy Azure CLI v paralelních verzích.


workingDirectory - pracovní adresář
Vstupní alias: cwd. string.

Aktuální pracovní adresář, ve kterém se skript spouští. Pokud je toto pole prázdné, je tento vstup kořenem úložiště (sestavení) nebo artefaktů (verze), což je $(System.DefaultWorkingDirectory).


Selhání failOnStandardError - na standardním chyb
boolean. Výchozí hodnota: false.

Pokud je tento vstup pravdivý, tato úloha selže při zápisu chyb do streamu StandardError. Zrušte zaškrtnutí políčka, pokud chcete ignorovat standardní chyby, a místo toho se při určování stavu spoléhají na ukončovací kódy.


powerShellIgnoreLASTEXITCODE - ignorovat $LASTEXITCODE
boolean. Volitelný. Používá se při scriptType = ps || scriptType = pscore. Výchozí hodnota: false.

Pokud je tento vstup false, připojí se řádek if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } na konec skriptu. Tím se rozšíří poslední ukončovací kód z externího příkazu jako ukončovací kód PowerShellu. Jinak se řádek nepřidá na konec skriptu.


visibleAzLogin - az login output visibility
boolean. Výchozí hodnota: true.

Pokud je tato hodnota nastavená na true, příkaz az login vypíše úlohu. Nastavení na hodnotu false potlačí výstup az login.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádné.

Poznámky

Novinky ve verzi úlohy 2.0

  • Podpora powershellového a powershellového základního skriptu
  • PowerShell Core funguje s agenty pro různé platformy (Linux, macOS nebo Windows), ujistěte se, že má agent PowerShell verze 6 nebo více.
  • Skript PowerShellu funguje jenom s agentem Windows, ujistěte se, že má agent PowerShell verze 5 nebo novější.

Požadavky

  • Předplatné Microsoft Azure.
  • Připojení služby Azure Resource Manager k vašemu účtu Azure
  • Agenti hostovaní Microsoftem mají předinstalované Azure CLI. Pokud ale používáte privátní agenty, nainstalujte Azure CLI na počítače, na kterých běží agent sestavení a verze. Pokud už agent běží na počítači, na kterém je nainstalované Rozhraní příkazového řádku Azure, restartujte agenta, aby se zajistilo, že se aktualizují všechny relevantní proměnné fáze.

Příklady

Následující příklad uvádí verzi Azure CLI a získá podrobnosti o předplatném.

- 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

Následující příklad ukazuje, jak předat argumenty skriptu.

  • Předávání argumentů vložené skripty:

    - 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'
    
  • Předávání argumentů s cestou skriptu:

    - 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'
    

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.0.0 nebo vyšší
Kategorie úkolu Nasadit

Viz také