AzureCLI@2 - Azure CLI v2-taak
Voer Azure CLI-opdrachten uit op een Azure-abonnement in een PowerShell Core/shell-script wanneer deze wordt uitgevoerd op een Linux-agent. Of voer Azure CLI-opdrachten uit op een Azure-abonnement in een PowerShell-/PowerShell Core-/batchscript wanneer deze wordt uitgevoerd op een Windows-agent.
Voer Azure CLI-opdrachten uit op een Azure-abonnement in een PowerShell Core/shell-script wanneer deze wordt uitgevoerd op een Linux-agent. Of voer Azure CLI-opdrachten uit op een Azure-abonnement in een PowerShell-/Powershell Core-/batchscript wanneer deze wordt uitgevoerd op een Windows-agent.
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.
Invoerwaarden
azureSubscription
- Azure Resource Manager-verbinding
Invoeralias: connectedServiceNameARM
. string
. Vereist.
Selecteer een Azure Resource Manager-serviceverbinding voor de implementatie.
scriptType
- Scripttype
string
. Vereist. Toegestane waarden: ps
(PowerShell), pscore
(PowerShell Core), batch
, bash
(Shell).
Type script. Selecteer een bash
of-script pscore
wanneer u wordt uitgevoerd op een Linux-agent. Of selecteer een batch
script , ps
of pscore
wanneer u uitvoert op een Windows-agent. Een pscore
script kan worden uitgevoerd op platformoverschrijdende agents (Linux, macOS of Windows).
scriptType
- Scripttype
string
. Vereist. Toegestane waarden: ps
(Powershell), pscore
(Powershell Core), batch
, bash
(Shell).
Type script. Selecteer een bash
of-script pscore
wanneer u wordt uitgevoerd op een Linux-agent. Of selecteer een batch
script , ps
of pscore
wanneer u uitvoert op een Windows-agent. Een pscore
script kan worden uitgevoerd op platformoverschrijdende agents (Linux, macOS of Windows).
scriptLocation
- Scriptlocatie
string
. Vereist. Toegestane waarden: inlineScript
(Inline script), scriptPath
(Scriptpad). Standaardwaarde: scriptPath
.
Pad naar het script.
scriptPath
- Scriptpad
string
. Vereist wanneer scriptLocation = scriptPath
.
Volledig gekwalificeerd pad van het script. Gebruik .ps1
, .bat
of .cmd
wanneer u een Windows-agent gebruikt. Gebruik .ps1
of .sh
bij het gebruik van een Linux-agent of een pad ten opzichte van de standaardwerkmap.
inlineScript
- Inlinescript
string
. Vereist wanneer scriptLocation = inlineScript
.
U kunt uw scripts hier inline schrijven. Wanneer u Windows-agent gebruikt, gebruikt u PowerShell, PowerShell Core of batchscripting. Gebruik PowerShell Core- of shellscripting bij het gebruik van Linux-agents. Gebruik voor batchbestanden het voorvoegsel call
vóór elke Azure-opdracht. U kunt ook vooraf gedefinieerde en aangepaste variabelen aan dit script doorgeven met behulp van argumenten.
Hier volgt een voorbeeld van PowerShell/PowerShellCore/shell.
az --version
az account show
Hier volgt een voorbeeld voor batch.
call az --version
call az account show
arguments
- Scriptargumenten
Invoeralias: scriptArguments
. string
.
Argumenten die zijn doorgegeven aan het script.
powerShellErrorActionPreference
- ErrorActionPreference
string
. Optioneel. Gebruik wanneer scriptType = ps || scriptType = pscore
. Toegestane waarden: stop
, continue
, silentlyContinue
. Standaardwaarde: stop
.
Hiermee wordt de regel $ErrorActionPreference = 'VALUE'
boven aan uw PowerShell/PowerShell Core-script voorafgegaan.
addSpnToEnvironment
- Details van service-principal in script openen
boolean
. Standaardwaarde: false
.
Voegt de service-principal-id, service-principalsleutel of federatietoken voor workloadidentiteit en tenant-id van het Azure-eindpunt dat u hebt gekozen toe aan de uitvoeringsomgeving van het script. U kunt de servicePrincipalId
variabelen , servicePrincipalKey
of idToken
en tenantId
gebruiken in uw script.
Dit wordt alleen gehonoreerd wanneer het Azure-eindpunt een verificatieschema voor service-principals of verificatieschema voor workloadidentiteitsfederatie heeft.
In de volgende lijst ziet u de syntaxis voor toegang tot omgevingsvariabelen op basis van het scripttype.
PowerShell-scriptsyntaxis:
$env:servicePrincipalId
Batchscriptsyntaxis:
%servicePrincipalId%
Syntaxis van shellscript:
$servicePrincipalId
useGlobalConfig
- Globale Azure CLI-configuratie gebruiken
boolean
. Standaardwaarde: false
.
Als deze invoer onwaar is, gebruikt deze taak een eigen Azure CLI-configuratiemap. Gebruik deze taak om Azure CLI-taken uit te voeren in parallelle releases.
workingDirectory
- Werkmap
Invoeralias: cwd
. string
.
Huidige werkmap waarin het script wordt uitgevoerd. Als u dit veld leeg laat, is deze invoer de hoofdmap van de opslagplaats (build) of artefacten (release), namelijk $(System.DefaultWorkingDirectory)
.
failOnStandardError
- Fout bij standaardfout
boolean
. Standaardwaarde: false
.
Als deze invoer waar is, mislukt deze taak wanneer er fouten naar de stream StandardError worden geschreven. Schakel het selectievakje uit om standaardfouten te negeren en gebruik in plaats daarvan afsluitcodes om de status te bepalen.
powerShellIgnoreLASTEXITCODE
- $LASTEXITCODE negeren
boolean
. Optioneel. Gebruik wanneer scriptType = ps || scriptType = pscore
. Standaardwaarde: false
.
Als deze invoer onwaar is, wordt de regel if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE }
toegevoegd aan het einde van het script. Hiermee wordt de laatste afsluitcode van een externe opdracht doorgegeven als afsluitcode van PowerShell. Anders wordt de regel niet toegevoegd aan het einde van het script.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Besturingsopties en algemene taakeigenschappen voor meer informatie.
Uitvoervariabelen
Geen.
Opmerkingen
Wat is er nieuw in versietaakversie 2.0
- Ondersteuning voor PowerShell en PowerShell Core-script.
- PowerShell Core werkt met platformoverschrijdende agents (Linux, macOS of Windows). Zorg ervoor dat de agent PowerShell versie 6 of hoger heeft.
- PowerShell-script werkt alleen met Windows-agent. Zorg ervoor dat de agent PowerShell versie 5 of lager heeft.
Vereisten
- Een Microsoft Azure-abonnement.
- Azure Resource Manager serviceverbinding met uw Azure-account.
- Door Microsoft gehoste agents hebben Azure CLI vooraf geïnstalleerd. Als u echter privéagents gebruikt, installeert u Azure CLI op de computer(s) waarop de build- en releaseagent wordt uitgevoerd. Als er al een agent wordt uitgevoerd op de computer waarop de Azure CLI is geïnstalleerd, start u de agent opnieuw op om ervoor te zorgen dat alle relevante fasevariabelen worden bijgewerkt.
Voorbeelden
In het volgende voorbeeld wordt de versie van Azure CLI weergegeven en worden de details van het abonnement opgehaald.
- 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
In het volgende voorbeeld ziet u hoe u argumenten doorgeeft aan uw script.
Argumenten doorgeven aan inlinescripts:
- 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'
Argumenten doorgeven met scriptpad:
- 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'
Vereisten
Vereiste | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
Eisen | Geen |
Functies | Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak. |
Opdrachtbeperkingen | Alle |
Instelbare variabelen | Alle |
Agentversie | 2.0.0 of hoger |
Taakcategorie | Implementeren |