Udostępnij za pośrednictwem


AzureCLI@2 — zadanie interfejsu wiersza polecenia platformy Azure w wersji 2

Uruchamianie poleceń interfejsu wiersza polecenia platformy Azure względem subskrypcji platformy Azure w skrypcie programu PowerShell Core/powłoki podczas uruchamiania w agencie systemu Linux. Możesz też uruchomić polecenia interfejsu wiersza polecenia platformy Azure względem subskrypcji platformy Azure w skrypcie programu PowerShell/programu PowerShell Core/batch podczas uruchamiania w agencie systemu Windows.

Uruchamianie poleceń interfejsu wiersza polecenia platformy Azure względem subskrypcji platformy Azure w skrypcie programu PowerShell Core/powłoki podczas uruchamiania w agencie systemu Linux. Możesz też uruchomić polecenia interfejsu wiersza polecenia platformy Azure względem subskrypcji platformy Azure w skrypcie programu PowerShell/programu PowerShell Core/batch podczas uruchamiania w agencie systemu Windows.

Składnia

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

Dane wejściowe

azureSubscription - Połączenie usługi Azure Resource Manager
Alias wejściowy: connectedServiceNameARM. string. Wymagane.

Wybierz połączenie usługi Azure Resource Manager dla wdrożenia.


scriptType - Typ skryptu
string. Wymagane. Dozwolone wartości: ps (PowerShell), pscore (PowerShell Core), batch, bash (Shell).

Typ skryptu. Wybierz skrypt lub pscore podczas uruchamiania bash w agencie systemu Linux. Możesz też wybrać batchskrypt , pslub pscore podczas uruchamiania w agencie systemu Windows. Skrypt pscore może działać na agentach międzyplatformowych (Linux, macOS lub Windows).


scriptType - Typ skryptu
string. Wymagane. Dozwolone wartości: ps (Powershell), pscore (PowerShell Core), batch, bash (Shell).

Typ skryptu. Wybierz skrypt lub pscore podczas uruchamiania bash w agencie systemu Linux. Możesz też wybrać batchskrypt , pslub pscore podczas uruchamiania w agencie systemu Windows. Skrypt pscore może działać na agentach międzyplatformowych (Linux, macOS lub Windows).


scriptLocation - Lokalizacja skryptu
string. Wymagane. Dozwolone wartości: inlineScript (skrypt wbudowany), scriptPath (ścieżka skryptu). Wartość domyślna: scriptPath.

Ścieżka do skryptu.


scriptPath - Ścieżka skryptu
string. Wymagane, gdy scriptLocation = scriptPath.

W pełni kwalifikowana ścieżka skryptu. Użyj , .ps1.batlub .cmd w przypadku korzystania z agenta opartego na systemie Windows. .sh Użyj .ps1 lub w przypadku korzystania z agenta opartego na systemie Linux lub ścieżki względem domyślnego katalogu roboczego.


inlineScript - Skrypt wbudowany
string. Wymagane, gdy scriptLocation = inlineScript.

Skrypty można napisać w tekście tutaj. W przypadku korzystania z agenta systemu Windows użyj programu PowerShell, programu PowerShell Core lub skryptów wsadowych. Używanie skryptów programu PowerShell Core lub powłoki podczas korzystania z agentów opartych na systemie Linux. W przypadku plików wsadowych użyj prefiksu call przed każdym poleceniem platformy Azure. Do tego skryptu można również przekazać wstępnie zdefiniowane i niestandardowe zmienne przy użyciu argumentów.

Poniżej przedstawiono przykład programu PowerShell/powerShellCore/powłoki.

az --version 
az account show 

Poniżej przedstawiono przykład dla partii.

call  az --version 
call az account show

arguments - Argumenty skryptu
Alias wejściowy: scriptArguments. string.

Argumenty przekazywane do skryptu.


powerShellErrorActionPreference - ErrorActionPreference
string. Opcjonalny. Użyj polecenia , gdy scriptType = ps || scriptType = pscore. Dozwolone wartości: stop, continue, silentlyContinue. Wartość domyślna: stop.

Poprzedza wiersz $ErrorActionPreference = 'VALUE' w górnej części skryptu programu PowerShell/programu PowerShell Core.


addSpnToEnvironment - Uzyskiwanie dostępu do szczegółów jednostki usługi w skry skryptie
boolean. Wartość domyślna: false.

Dodaje identyfikator jednostki usługi, klucz jednostki usługi lub token federacyjny tożsamości obciążenia oraz identyfikator dzierżawy punktu końcowego platformy Azure wybranego do środowiska wykonywania skryptu. W skrycie możesz użyć servicePrincipalIdzmiennych , servicePrincipalKey lub idTokeni tenantId .

Jest to uznawane tylko wtedy, gdy punkt końcowy platformy Azure ma schemat uwierzytelniania jednostki usługi lub schemat uwierzytelniania federacji tożsamości obciążenia.

Poniższa lista przedstawia składnię dostępu do zmiennych środowiskowych na podstawie typu skryptu.

  • Składnia skryptu programu PowerShell: $env:servicePrincipalId

  • Składnia skryptu usługi Batch: %servicePrincipalId%

  • Składnia skryptu powłoki: $servicePrincipalId


useGlobalConfig - Korzystanie z globalnej konfiguracji interfejsu wiersza polecenia platformy Azure
boolean. Wartość domyślna: false.

Jeśli te dane wejściowe są fałszywe, to zadanie będzie używać własnego katalogu konfiguracji interfejsu wiersza polecenia platformy Azure. To zadanie służy do uruchamiania zadań interfejsu wiersza polecenia platformy Azure w wersjach równoległych .


workingDirectory - Katalog roboczy
Alias wejściowy: cwd. string.

Bieżący katalog roboczy, w którym jest uruchamiany skrypt. Jeśli pole pozostanie puste, to dane wejściowe są katalogami głównymi repozytorium (kompilacja) lub artefaktami (wydanie), czyli $(System.DefaultWorkingDirectory).


failOnStandardError - Błąd standardowy kończy się niepowodzeniem
boolean. Wartość domyślna: false.

Jeśli te dane wejściowe są prawdziwe, to zadanie zakończy się niepowodzeniem, gdy wszystkie błędy zostaną zapisane w strumieniu StandardError. Wyczyść pole wyboru, aby zignorować standardowe błędy, a zamiast tego polegać na kodach zakończenia w celu określenia stanu.


powerShellIgnoreLASTEXITCODE - Ignoruj $LASTEXITCODE
boolean. Opcjonalny. Użyj polecenia , gdy scriptType = ps || scriptType = pscore. Wartość domyślna: false.

Jeśli te dane wejściowe są fałszywe, wiersz if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } jest dołączany na końcu skryptu. Spowoduje to propagowanie ostatniego kodu zakończenia z zewnętrznego polecenia jako kodu zakończenia programu PowerShell. W przeciwnym razie wiersz nie jest dołączany na końcu skryptu.


Opcje sterowania zadania

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Uwagi

Co nowego w zadaniu wersji 2.0

  • Obsługa skryptów programu PowerShell i programu PowerShell Core.
  • Program PowerShell Core współpracuje z agentami międzyplatformowymi (Linux, macOS lub Windows), upewnij się, że agent ma program PowerShell w wersji 6 lub nowszej.
  • Skrypt programu PowerShell działa tylko z agentem systemu Windows, upewnij się, że agent ma program PowerShell w wersji 5 lub nowszej.

Wymagania wstępne

  • Subskrypcja platformy Microsoft Azure.
  • Połączenie usługi Azure Resource Manager z kontem platformy Azure.
  • Agenci hostowani przez firmę Microsoft mają wstępnie zainstalowany interfejs wiersza polecenia platformy Azure. Jeśli jednak używasz agentów prywatnych, zainstaluj interfejs wiersza polecenia platformy Azure na komputerach z uruchomionym agentem kompilacji i wydania. Jeśli agent jest już uruchomiony na maszynie, na której zainstalowano interfejs wiersza polecenia platformy Azure, uruchom ponownie agenta, aby upewnić się, że wszystkie odpowiednie zmienne etapu są aktualizowane.

Przykłady

Poniższy przykład zawiera listę wersji interfejsu wiersza polecenia platformy Azure i pobiera szczegółowe informacje o subskrypcji.

- 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

Poniższy przykład ilustruje sposób przekazywania argumentów do skryptu.

  • Przekazywanie argumentów do wbudowanych skryptów:

    - 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'
    
  • Przekazywanie argumentów ze ścieżką skryptu:

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

Wymagania

Wymaganie Opis
Typy potoków YAML, kompilacja klasyczna, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Brak
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne w formie tabeli settable Dowolne
Wersja agenta 2.0.0 lub nowsze
Kategoria zadania Wdróż

Zobacz też