Dela via


AzureCLI@2 – Azure CLI v2-uppgift

Kör Azure CLI-kommandon mot en Azure-prenumeration i ett PowerShell Core/shell-skript när du kör på Linux-agenten. Du kan också köra Azure CLI-kommandon mot en Azure-prenumeration i ett PowerShell/PowerShell Core/batch-skript när du kör på Windows-agenten.

Kör Azure CLI-kommandon mot en Azure-prenumeration i ett PowerShell Core/shell-skript när du kör på Linux-agenten. Du kan också köra Azure CLI-kommandon mot en Azure-prenumeration i ett PowerShell/Powershell Core/batch-skript när du kör på Windows-agenten.

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.

Indata

azureSubscription - Azure Resource Manager-anslutning
Indataalias: connectedServiceNameARM. string. Krävs.

Välj en Azure Resource Manager-tjänstanslutning för distributionen.


scriptType - Skripttyp
string. Krävs. Tillåtna värden: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Typ av skript. Välj ett bash skript eller pscore när du kör på Linux-agenten. Eller välj ett batch- pseller pscore -skript när du kör windows-agenten. Ett pscore skript kan köras på plattformsoberoende agenter (Linux, macOS eller Windows).


scriptType - Skripttyp
string. Krävs. Tillåtna värden: ps (PowerShell), pscore (Powershell Core), batch, bash (Shell).

Typ av skript. Välj ett bash skript eller pscore när du kör på Linux-agenten. Eller välj ett batch- pseller pscore -skript när du kör windows-agenten. Ett pscore skript kan köras på plattformsoberoende agenter (Linux, macOS eller Windows).


scriptLocation - Skriptplats
string. Krävs. Tillåtna värden: inlineScript (infogat skript), scriptPath (Skriptsökväg). Standardvärde: scriptPath.

Sökväg till skriptet.


scriptPath - Skriptsökväg
string. Krävs när scriptLocation = scriptPath.

Fullständigt kvalificerad sökväg för skriptet. Använd .ps1, .bateller .cmd när du använder Windows-baserad agent. Använd .ps1 eller .sh när du använder En Linux-baserad agent eller en sökväg i förhållande till standardarbetskatalogen.


inlineScript - Infogat skript
string. Krävs när scriptLocation = inlineScript.

Du kan skriva skripten infogat här. När du använder Windows-agenten använder du PowerShell, PowerShell Core eller batchskript. Använd PowerShell Core- eller shell-skript när du använder Linux-baserade agenter. För batchfiler använder du prefixet call före varje Azure-kommando. Du kan också skicka fördefinierade och anpassade variabler till det här skriptet med hjälp av argument.

Följande är ett exempel för PowerShell/PowerShellCore/shell.

az --version 
az account show 

Följande är ett exempel för batch.

call  az --version 
call az account show

arguments - Skriptargument
Indataalias: scriptArguments. string.

Argument som skickats till skriptet.


powerShellErrorActionPreference - ErrorActionPreference
string. Valfritt. Använd när scriptType = ps || scriptType = pscore. Tillåtna värden: stop, continue, silentlyContinue. Standardvärde: stop.

Förbereder raden $ErrorActionPreference = 'VALUE' överst i PowerShell/PowerShell Core-skriptet.


addSpnToEnvironment - Få åtkomst till information om tjänstens huvudnamn i skriptet
boolean. Standardvärde: false.

Lägger till tjänstens huvudnamns-ID, nyckeln för tjänstens huvudnamn eller federationstoken för arbetsbelastningsidentitet och klientorganisations-ID för den Azure-slutpunkt som du valde i skriptets körningsmiljö. Du kan använda variablerna servicePrincipalId, servicePrincipalKey eller idTokenoch tenantId i skriptet.

Detta gäller endast när Azure-slutpunkten har autentiseringsschema för tjänstens huvudnamn eller autentiseringsschema för arbetsbelastningsidentitetsfederation.

I följande lista visas syntaxen för att komma åt miljövariabler baserat på skripttypen.

  • PowerShell-skriptsyntax: $env:servicePrincipalId

  • Syntax för Batch-skript: %servicePrincipalId%

  • Syntax för shell-skript: $servicePrincipalId


useGlobalConfig - Använda global Azure CLI-konfiguration
boolean. Standardvärde: false.

Om dessa indata är falska använder den här aktiviteten en egen Azure CLI-konfigurationskatalog. Använd den här uppgiften för att köra Azure CLI-uppgifter i parallella versioner.


workingDirectory - Arbetskatalog
Indataalias: cwd. string.

Aktuell arbetskatalog där skriptet körs. Om det lämnas tomt är dessa indata roten för lagringsplatsen (build) eller artefakter (release), som är $(System.DefaultWorkingDirectory).


failOnStandardError - Fel vid standardfel
boolean. Standardvärde: false.

Om dessa indata är sanna misslyckas den här aktiviteten när eventuella fel skrivs till StandardError-strömmen. Avmarkera kryssrutan för att ignorera standardfel och förlita dig i stället på slutkoder för att fastställa statusen.


powerShellIgnoreLASTEXITCODE - Ignorera $LASTEXITCODE
boolean. Valfritt. Använd när scriptType = ps || scriptType = pscore. Standardvärde: false.

Om dessa indata är falska läggs raden if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } till i slutet av skriptet. Detta sprider den senaste slutkoden från ett externt kommando som slutkod för PowerShell. Annars läggs inte raden till i slutet av skriptet.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Inga.

Kommentarer

Nyheter i version av aktivitetsversion 2.0

  • Stöd för PowerShell- och PowerShell Core-skript.
  • PowerShell Core fungerar med plattformsoberoende agenter (Linux, macOS eller Windows), kontrollera att agenten har PowerShell version 6 eller mer.
  • PowerShell-skript fungerar endast med Windows-agenten, kontrollera att agenten har PowerShell version 5 eller senare.

Förutsättningar

  • En Microsoft Azure-prenumeration.
  • Azure Resource Manager-tjänstanslutning till ditt Azure-konto.
  • Microsofts värdbaserade agenter har Azure CLI förinstallerat. Men om du använder privata agenter installerar du Azure CLI på de datorer som kör bygg- och versionsagenten. Om en agent redan körs på den dator där Azure CLI är installerat startar du om agenten för att säkerställa att alla relevanta stegvariabler uppdateras.

Exempel

I följande exempel visas versionen av Azure CLI och information om prenumerationen hämtas.

- 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

I följande exempel visas hur du skickar argument till ditt skript.

  • Skicka argument till infogade skript:

    - 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'
    
  • Skicka argument med skriptsökväg:

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

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
Krav Ingen
Funktioner Den här aktiviteten uppfyller inte några krav för efterföljande uppgifter i jobbet.
Kommandobegränsningar Valfri
Inställningsbara variabler Valfri
Agentversion 2.0.0 eller senare
Uppgiftskategori Distribuera

Se även