AzureCLI@2 - Azure CLI úkol v2

Spouštějte příkazy Azure CLI proti předplatnému Azure v PowerShell Core/shell skriptu při spuštění na Linux agentovi. Nebo spouštějte příkazy Azure CLI proti předplatnému Azure v PowerShell/PowerShell Core/batch skriptu při spuštění na Windows agentovi.

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.

Vstupy

azureSubscription - Azure Resource Manager spojení
Vstupní alias: connectedServiceNameARM. string. Povinné.

Vyberte připojení k 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 při spuštění na Windows agentovi vyberte skript batch, ps nebo pscore. 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 založeného na Windows používejte .ps1, .bat nebo .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žívání Windows agenta používejte 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žívejte předponu call před každým Azure příkazem. 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ává ID principal služby, klíč service principal nebo identitu identity zátěže (federation token) a tenant ID Azure endpointu, který jste si vybrali, do prostředí skriptu. Ve skriptu můžete použít proměnné servicePrincipalId, servicePrincipalKey nebo idTokena tenantId.

Toto je dodrženo pouze tehdy, když má endpoint Azure autentizační schéma principálu služby nebo autentizační schéma identity zátěže.

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žijte globální Azure CLI konfiguraci
boolean. Výchozí hodnota: false.

Pokud je tento vstup nesprávný, tato úloha použije vlastní konfigurační adresář Azure CLI. Použijte tuto úlohu k provádění Azure CLI úloh ve verzích parallel.


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 - Viditelnost výstupu přihlášení v AZ
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 pracuje s multiplatformními agenty (Linux, macOS nebo Windows), ujistěte se, že agent má PowerShell verze 6 nebo více.
  • PowerShell skript funguje pouze s Windows agentem, ujistěte se, že agent má PowerShell verze 5 nebo nižší.

Požadavky

  • Předplatné Microsoft Azure.
  • Azure Resource Manager připojení ke službě k vašemu Azure účtu.
  • Microsoft hostovaní agenti mají předinstalovaný Azure CLI. Pokud ale používáte soukromé agenty, instalujte Azure CLI na počítač(y), které spouštějí build a release agent. Pokud na počítači, na kterém je Azure CLI nainstalováno, již běží agent, restartujte agenta, abyste zajistili, že jsou všechny relevantní proměnné fáze aktualizovány.

Příklady

Následující příklad uvádí verzi Azure CLI a získává 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, skupina nasazení
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é