AzurePowerShell@5 – úloha Azure PowerShell v5
Tuto úlohu použijte ke spuštění skriptu PowerShellu v prostředí Azure. Kontext Azure se ověří pomocí poskytnutého připojení služby Azure Resource Manager.
Poznámka
Azure PowerShell v5 ve výchozím nastavení používá agenty PowerShellu Core pro Linux a Windows PowerShell pro agenty windows. Pokud chcete v agentech Pro Windows používat nejnovější verzi PowerShellu, nastavte pwsh
parametr na true
. Místo toho se pak použije PowerShell Core.
Syntax
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#validateScriptSignature: false # boolean. Optional. Use when ScriptType = FilePath. Validate script signature. Default: false.
#workingDirectory: # string. Working Directory.
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#workingDirectory: # string. Working Directory.
Vstupy
azureSubscription
- Předplatné Azure
Alias vstupu: ConnectedServiceNameARM
. string
. Povinná hodnota.
Azure Resource Manager předplatné, které se má nakonfigurovat před spuštěním PowerShellu.
ScriptType
- Typ skriptu
string
. Povolené hodnoty: FilePath
(Cesta k souboru skriptu), InlineScript
(vložený skript). Výchozí hodnota: FilePath
.
Typ skriptu: cesta k souboru nebo vložená.
ScriptPath
- Cesta ke skriptu
string
. Nepovinný parametr. Použijte, když ScriptType = FilePath
.
Cesta skriptu. Mělo by se jednat o plně kvalifikovanou cestu nebo cestu relativní k výchozímu pracovnímu adresáři.
Inline
- Vložený skript
string
. Nepovinný parametr. Použijte, když ScriptType = InlineScript
. Výchozí hodnota: # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Specifikuje skript, který se má spustit. Maximální podporovaná délka vloženého skriptu je 5 000 znaků. Pokud chcete použít delší skript, použijte skript ze souboru.
ScriptArguments
- Argumenty skriptu
string
. Nepovinný parametr. Použijte, když ScriptType = FilePath
.
Další parametry, které se předávají do PowerShellu. Můžou to být řadové nebo pojmenované parametry. Neplatí pro možnost vloženého skriptu.
errorActionPreference
- ErrorActionPreference
string
. Povolené hodnoty: stop
, continue
, silentlyContinue
. Výchozí hodnota: stop
.
Vybere hodnotu ErrorActionPreference
proměnné pro spuštění skriptu.
FailOnStandardError
- Selhání při standardní chybě
boolean
. Výchozí hodnota: false
.
Pokud je to pravda, tato úloha selže, pokud se do kanálu chyb zapíšou nějaké chyby nebo pokud se do standardního datového proudu chyb zapíšou nějaká data.
azurePowerShellVersion
- verze Azure PowerShell
Alias vstupu: TargetAzurePs
. string
. Povolené hodnoty: LatestVersion
(Nejnovější nainstalovaná verze), OtherVersion
(Zadejte jinou verzi). Výchozí hodnota: OtherVersion
.
V případě hostovaných agentů jsou 1.0.0
podporované verze Azure PowerShell , 1.6.0
, 2.3.2
2.6.0
a 3.1.0
(hostovaná fronta VS2017).
Pokud chcete vybrat nejnovější verzi dostupnou v agentu, vyberte LatestVersion
(Nejnovější nainstalovaná verze).
U privátních agentů můžete určit upřednostňovanou verzi Azure PowerShell pomocí OtherVersion
(Zadejte jinou verzi).
preferredAzurePowerShellVersion
- Upřednostňovaná verze Azure PowerShell
Alias vstupu: CustomTargetAzurePs
. string
. Vyžaduje se, když TargetAzurePs = OtherVersion
.
Upřednostňovanou Azure PowerShell Verze musí být správná sémantická verze, např. 1.2.3
. Regulární výraz like 2.\*,2.3.\*
se nepodporuje. Hostovaný fond VS2017 v současné době podporuje moduly Az verze 1.0.0
, 1.6.0
, , 2.3.2
2.6.0
a 3.1.0
.
pwsh
- Použití PowerShellu Core
boolean
. Výchozí hodnota: false
.
Pokud je to pravda, pak úlohy spuštěné na agentech Windows použijí pwsh.exe
z vaší cesty místo powershell.exe
.
validateScriptSignature
- Ověření podpisu skriptu
boolean
. Nepovinný parametr. Použijte, když ScriptType = FilePath
. Výchozí hodnota: false
.
Pokud je to pravda, úloha před jeho spuštěním nejprve zkontroluje, jestli je zadaný skript podepsaný a platný.
workingDirectory
- Pracovní adresář
string
.
Pracovní adresář, ve kterém je skript spuštěn.
Možnosti ovládání úloh
Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.
Výstupní proměnné
Žádné
Poznámky
Řešení potíží
Skript fungoval místně, ale v kanálu selhal
K tomu obvykle dochází v případě, že připojení služby použité v kanálu nemá dostatečná oprávnění ke spuštění skriptu. Místně se skript spustí s vašimi přihlašovacími údaji a bude úspěšný, protože můžete mít požadovaný přístup.
Pokud chcete tento problém vyřešit, ujistěte se, že instanční objekt nebo přihlašovací údaje pro ověřování mají požadovaná oprávnění. Další informace najdete v tématu Použití Role-Based Access Control ke správě přístupu k prostředkům předplatného Azure.
Chyba: Nelze najít moduly: název<> modulu s verzí: "verze>"<. Pokud byl modul nedávno nainstalovaný, zkuste to znovu po restartování agenta úloh Azure Pipelines.
Azure PowerShell úloha používá k interakci s předplatným Azure modul Azure, AzureRM nebo Az PowerShell. K tomuto problému dochází v případě, že modul PowerShellu není k dispozici v hostovaném agentu. Proto pro konkrétní verzi úlohy musí být v možnostech Azure PowerShell verze ze seznamu dostupných verzí zadána upřednostňovaná Azure PowerShell verze. Nainstalovaný software najdete v tabulce Software v agentech hostovaných Microsoftem.
Problémy s připojením služby
Informace o řešení potíží souvisejících s připojením služeb najdete v tématu Řešení potíží s připojením služby.
Příklady
Následující příklad ukazuje, jak vyvolat skript ze souboru a předat do něj argumenty skriptu.
- task: AzurePowerShell@5
inputs:
azureSubscription: my-arm-service-connection
scriptType: filePath
scriptPath: $(Build.SourcesDirectory)\myscript.ps1
scriptArguments:
-Arg1 val1 `
-Arg2 val2 `
-Arg3 val3
azurePowerShellVersion: latestVersion
pwsh: true
Následující argumenty ukazují, jak vyvolat vložený skript.
- task: AzurePowerShell@5
inputs:
azureSubscription: 'Azure subscription connection placeholder'
azurePowerShellVersion: LatestVersion
ScriptType: 'InlineScript'
Inline: |
# You can write your azure powershell scripts inline here.
# You can also pass predefined and custom variables to this script using arguments
Write-Host 'Hello'
Write-Host 'World!'
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, klasický build, klasická verze |
Běží na | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.115.0 nebo vyšší |
Kategorie úloh | Nasazení |