AzureCLI@2 — zadanie interfejsu wiersza polecenia platformy Azure w wersji 2
Uruchom polecenia 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 w odniesieniu do subskrypcji platformy Azure w skrypcie programu PowerShell/PowerShell Core/wsadowym podczas uruchamiania w agencie systemu Windows.
Uruchom polecenia 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.
#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.
# 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łączenia usługi Azure Resource Manager
Alias wejściowy: connectedServiceNameARM
.
string
. To jest wymagane.
Wybierz połączenie usługi Azure Resource Manager dla wdrożenia.
scriptType
-
typ skryptu
string
. To jest wymagane. Dozwolone wartości: ps
(PowerShell), pscore
(PowerShell Core), batch
, bash
(Shell).
Typ skryptu. Wybierz skrypt bash
lub pscore
podczas uruchamiania w agencie systemu Linux. Możesz też wybrać skrypt batch
, 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
. To jest wymagane. Dozwolone wartości: ps
(PowerShell), pscore
(PowerShell Core), batch
, bash
(Shell).
Typ skryptu. Wybierz skrypt bash
lub pscore
podczas uruchamiania w agencie systemu Linux. Możesz też wybrać skrypt batch
, ps
lub pscore
podczas uruchamiania w agencie systemu Windows. Skrypt pscore
może działać na agentach międzyplatformowych (Linux, macOS lub Windows).
scriptLocation
-
lokalizacji skryptu
string
. To jest 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
podczas korzystania z agenta opartego na systemie Windows. Użyj .ps1
lub .sh
podczas korzystania z agenta opartego na systemie Linux lub ścieżki względem domyślnego katalogu roboczego.
skryptu wbudowanego
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żyj 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. Można również przekazać wstępnie zdefiniowane i niestandardowe zmienne do tego skryptu przy użyciu argumentów.
Poniżej przedstawiono przykład dla 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 przekazane 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'
u góry skryptu programu PowerShell/PowerShell Core.
szczegóły jednostki usługi addSpnToEnvironment
- Access w skryptu
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żna użyć zmiennych servicePrincipalId
, 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.
Na poniższej liście przedstawiono 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
-
Użyj 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 .
katalogu roboczego workingDirectory
-
Alias wejściowy: cwd
.
string
.
Bieżący katalog roboczy, w którym jest uruchamiany skrypt. Jeśli pole pozostanie puste, dane wejściowe są katalogami głównymi repozytorium (kompilacja) lub artefaktami (wydanie), które są $(System.DefaultWorkingDirectory)
.
failOnStandardError
-
niepowodzenie w błędu standardowego
boolean
. Wartość domyślna: false
.
Jeśli te dane wejściowe mają wartość true, to zadanie zakończy się niepowodzeniem, gdy wszelkie błędy są zapisywane w strumieniu StandardError. Wyczyść pole wyboru, aby zignorować standardowe błędy i 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 propagację 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.
visibleAzLogin
-
az login output visibility
boolean
. Wartość domyślna: true
.
Jeśli ustawiono wartość true, polecenie az login wyświetli dane wyjściowe zadania. Ustawienie wartości false spowoduje pominięcie polecenia az login output.
Opcje sterowania zadaniami
Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.
Zmienne wyjściowe
Żaden.
Uwagi
Co nowego w zadaniu wersja 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óły 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 skryptów wbudowanych:
- 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, klasyczna kompilacja, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Żaden |
możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
ograniczenia poleceń | Jakikolwiek |
zmienne ustawiane | Jakikolwiek |
Wersja agenta | 2.0.0 lub nowsza |
Kategoria zadań | Zastosuj |
Zobacz też
- wdrażania grupy zasobów platformy Azure
- wdrażania usługi w chmurze platformy Azure
- Wdrażanie aplikacji internetowej platformy Azure