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ć batch
skrypt , ps
lub 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ć batch
skrypt , ps
lub 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
.bat
lub .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ć servicePrincipalId
zmiennych , servicePrincipalKey
lub idToken
i 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óż |