AzureCLI@2 – Azure CLI v2-feladat

Futtassa az Azure CLI-parancsokat egy Azure-előfizetésen PowerShell Core/shell-szkriptben, amikor Linux-ügynökön fut. Vagy futtassa az Azure CLI-parancsokat egy Azure-előfizetésen PowerShell-/PowerShell Core-/batch-szkriptben Windows-ügynökön való futtatáskor.

Futtassa az Azure CLI-parancsokat egy Azure-előfizetésen PowerShell Core/shell-szkriptben, amikor Linux-ügynökön fut. Vagy futtassa az Azure CLI-parancsokat egy Azure-előfizetésen PowerShell-/Powershell Core-/batch-szkriptben Windows-ügynökön való futtatáskor.

Syntax

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

Bevitelek

azureSubscription - Azure Resource Manager-kapcsolat
Bemeneti alias: connectedServiceNameARM. string. Kötelező.

Válasszon ki egy Azure Resource Manager szolgáltatáskapcsolatot az üzembe helyezéshez.


scriptType - Szkript típusa
string. Kötelező. Engedélyezett értékek: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

A szkript típusa. Linux-ügynökön való futtatáskor válasszon ki egy bash vagy pscore több szkriptet. Vagy válasszon ki egy batch, psvagy pscore szkriptet, amikor Windows-ügynökön fut. A pscore szkriptek platformfüggetlen ügynökökön (Linux, macOS vagy Windows) futtathatók.


scriptType - Szkript típusa
string. Kötelező. Engedélyezett értékek: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

A szkript típusa. Linux-ügynökön való futtatáskor válasszon ki egy bash vagy pscore több szkriptet. Vagy válasszon ki egy batch, psvagy pscore szkriptet, amikor Windows-ügynökön fut. A pscore szkriptek platformfüggetlen ügynökökön (Linux, macOS vagy Windows) futtathatók.


scriptLocation - Szkript helye
string. Kötelező. Engedélyezett értékek: inlineScript (beágyazott szkript), scriptPath (Szkript elérési útja). Alapértelmezett érték: scriptPath.

A szkript elérési útja.


scriptPath - Szkript elérési útja
string. Akkor szükséges, ha scriptLocation = scriptPath.

A szkript teljes elérési útja. Windows-alapú ügynök használata esetén használja .ps1a , .bata vagy .cmd a parancsot. .sh Linux-alapú ügynök vagy az alapértelmezett munkakönyvtárhoz viszonyított elérési út használata .ps1 vagy használata esetén.


inlineScript - Beágyazott szkript
string. Akkor szükséges, ha scriptLocation = inlineScript.

A szkripteket ide írhatja. Windows-ügynök használata esetén használja a PowerShellt, a PowerShell Core-t vagy a kötegelt szkriptelést. Linux-alapú ügynökök használatakor használja a PowerShell Core-t vagy a shell-szkriptelést. Kötegelt fájlok esetén használja az előtagot call minden Azure-parancs előtt. Előre definiált és egyéni változókat is átadhat ehhez a szkripthez argumentumok használatával.

Az alábbiakban egy példa látható a PowerShell/PowerShellCore/shell használatára.

az --version 
az account show 

Az alábbi példa a kötegre mutat be példát.

call  az --version 
call az account show

arguments - Szkriptargumentumok
Bemeneti alias: scriptArguments. string.

A szkriptnek átadott argumentumok.


powerShellErrorActionPreference - ErrorActionPreference
string. Választható. Használja a következőt: scriptType = ps || scriptType = pscore. Engedélyezett értékek: stop, continue, silentlyContinue. Alapértelmezett érték: stop.

Előre felerősít egy sort $ErrorActionPreference = 'VALUE' a PowerShell-/PowerShell Core-szkript tetején.


addSpnToEnvironment - A szolgáltatásnév részleteinek elérése a szkriptben
boolean. Alapértelmezett érték: false.

Hozzáadja a szolgáltatásnév azonosítóját, a szolgáltatásnévkulcsot vagy a számítási feladat identitásának összevonási jogkivonatát, valamint a szkript végrehajtási környezetéhez kiválasztott Azure-végpont bérlőazonosítóját. Használhatja a servicePrincipalId, servicePrincipalKey vagy idTokena és tenantId változókat a szkriptben.

Ez csak akkor érvényes, ha az Azure-végpont szolgáltatásnév-hitelesítési sémával vagy számítási feladat identitás-összevonási hitelesítési sémával rendelkezik.

Az alábbi lista a környezeti változók szkripttípuson alapuló elérésének szintaxisát mutatja be.

  • PowerShell-szkript szintaxisa: $env:servicePrincipalId

  • Batch-szkript szintaxisa: %servicePrincipalId%

  • Rendszerhéjszkript szintaxisa: $servicePrincipalId


useGlobalConfig - Globális Azure CLI-konfiguráció használata
boolean. Alapértelmezett érték: false.

Ha ez a bemenet hamis, ez a feladat a saját Azure CLI-konfigurációs könyvtárát fogja használni. Ezzel a feladatokkal azure CLI-feladatokat futtathat párhuzamos kiadásokban.


workingDirectory - Munkakönyvtár
Bemeneti alias: cwd. string.

Aktuális munkakönyvtár, ahol a szkript fut. Ha üresen marad, ez a bemenet az adattár (build) vagy az összetevők (kiadás) gyökere, amely a következő $(System.DefaultWorkingDirectory): .


failOnStandardError - Hiba standard hiba miatt
boolean. Alapértelmezett érték: false.

Ha ez a bemenet igaz, ez a feladat sikertelen lesz, ha bármilyen hibát ír a StandardError streambe. Törölje a jelölőnégyzet jelölését, hogy figyelmen kívül hagyja a szokásos hibákat, és ehelyett a kilépési kódokra támaszkodva állapítsa meg az állapotot.


powerShellIgnoreLASTEXITCODE - $LASTEXITCODE mellőzése
boolean. Választható. Használja a következőt: scriptType = ps || scriptType = pscore. Alapértelmezett érték: false.

Ha ez a bemenet hamis, a program hozzáfűzi a sort if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } a szkript végéhez. Ez egy külső parancsból propagálja az utolsó kilépési kódot a PowerShell kilépési kódjaként. Ellenkező esetben a program nem fűzi hozzá a sort a szkript végéhez.


Feladatvezérlési lehetőségek

Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.

Kimeneti változók

Nincsenek.

Megjegyzések

A 2.0-s verziójú feladat újdonságai

  • A PowerShell és a PowerShell Core szkript támogatása.
  • A PowerShell Core platformfüggetlen ügynökökkel (Linux, macOS vagy Windows) működik, győződjön meg arról, hogy az ügynök rendelkezik a PowerShell 6-os vagy újabb verziójával.
  • A PowerShell-szkript csak Windows-ügynökkel működik, győződjön meg arról, hogy az ügynök 5-ös vagy újabb verziójú PowerShell-lel rendelkezik.

Előfeltételek

  • Egy Microsoft Azure-előfizetés.
  • Azure Resource Manager szolgáltatáskapcsolat az Azure-fiókjával.
  • A Microsoft által üzemeltetett ügynökök előre telepítették az Azure CLI-t. Ha azonban magánügynököket használ, telepítse az Azure CLI-t a buildelési és kiadási ügynököt futtató számítógépekre. Ha egy ügynök már fut azon a gépen, amelyen az Azure CLI telepítve van, indítsa újra az ügynököt, hogy az összes releváns fázisváltozó frissüljön.

Példák

Az alábbi példa felsorolja az Azure CLI verzióját, és lekéri az előfizetés részleteit.

- 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

Az alábbi példa bemutatja, hogyan adhat át argumentumokat a szkriptnek.

  • Argumentumok továbbítása beágyazott szkripteknek:

    - 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'
    
  • Argumentumok átadása szkriptelérési úttal:

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

Követelmények

Követelmény Leírás
Folyamattípusok YAML, klasszikus build, klasszikus kiadás
Futtatás: Ügynök, DeploymentGroup
Igények None
Képességek Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek.
Parancskorlátozások Bármelyik
Változók beállítása Bármelyik
Ügynök verziója 2.0.0 vagy újabb
Feladatkategória Üzembe helyezés

Lásd még