AzurePowerShell@5– Azure PowerShell v5-Aufgabe
Verwenden Sie diese Aufgabe, um ein PowerShell-Skript in einer Azure-Umgebung auszuführen. Der Azure-Kontext wird mit der bereitgestellten Azure Resource Manager-Dienstverbindung authentifiziert.
Hinweis
Standardmäßig verwendet Azure PowerShell v5 PowerShell Core für Linux-Agents und Windows PowerShell für Windows-Agents. Um die neueste Version von PowerShell unter Windows-Agents zu verwenden, legen Sie den pwsh
Parameter auf fest true
. Stattdessen wird PowerShell Core verwendet.
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.
Eingaben
azureSubscription
- Azure-Abonnement
Eingabealias: ConnectedServiceNameARM
. string
. Erforderlich.
Das Azure Resource Manager Abonnement, das vor der Ausführung von PowerShell konfiguriert werden soll.
ScriptType
- Skripttyp
string
. Zulässige Werte: FilePath
(Skriptdateipfad), InlineScript
(Inlineskript). Standardwert. FilePath
.
Der Typ des Skripts: Dateipfad oder Inline.
ScriptPath
- Skriptpfad
string
. Optional. Verwenden Sie , wenn ScriptType = FilePath
.
Der Pfad des Skripts. Dies sollte ein vollqualifizierter Pfad oder ein pfad relativ zum Standardarbeitsverzeichnis sein.
Inline
- Inlineskript
string
. Optional. Verwenden Sie , wenn ScriptType = InlineScript
. Standardwert. # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Gibt das auszuführende Skript an. Die maximal unterstützte Inlineskriptlänge beträgt 5.000 Zeichen. Verwenden Sie ein Skript aus einer Datei, wenn Sie ein längeres Skript verwenden möchten.
ScriptArguments
- Skriptargumente
string
. Optional. Verwenden Sie , wenn ScriptType = FilePath
.
Die zusätzlichen Parameter, die an PowerShell übergeben werden sollen. Dabei kann es sich entweder um Ordnungsparameter oder um benannte Parameter handelt. Gilt nicht für eine Inlineskriptoption.
errorActionPreference
- ErrorActionPreference
string
. Zulässige Werte: stop
, continue
und silentlyContinue
. Standardwert. stop
.
Wählt den Wert der Variablen für die ErrorActionPreference
Ausführung des Skripts aus.
FailOnStandardError
- Fehler beim Standardfehler
boolean
. Standardwert. false
.
Wenn dies zutrifft, schlägt diese Aufgabe fehl, wenn Fehler in die Fehlerpipeline geschrieben werden oder Wenn Daten in den Standardfehlerdatenstrom geschrieben werden.
azurePowerShellVersion
- Azure PowerShell Version
Eingabealias: TargetAzurePs
. string
. Zulässige Werte: LatestVersion
(Neueste installierte Version), OtherVersion
(Andere Version angeben). Standardwert. OtherVersion
.
Bei gehosteten Agents werden 1.0.0
die Azure PowerShell Versionen , 1.6.0
, 2.3.2
2.6.0
, und 3.1.0
(gehostete VS2017-Warteschlange) unterstützt.
Um die neueste auf dem Agent verfügbare Version auszuwählen, wählen Sie (Neueste installierte Version) aus LatestVersion
.
Für private Agents können Sie mit (Andere Version angeben) eine bevorzugte Version von Azure PowerShell OtherVersion
angeben.
preferredAzurePowerShellVersion
- Bevorzugte Azure PowerShell-Version
Eingabealias: CustomTargetAzurePs
. string
. Erforderlich, wenn TargetAzurePs = OtherVersion
.
Die bevorzugte Azure PowerShell Version muss eine geeignete semantische Version sein, z. B. 1.2.3
. RegEx-Like 2.\*,2.3.\*
wird nicht unterstützt. Der gehostete VS2017-Pool unterstützt derzeit die Az-Modulversionen 1.0.0
, 1.6.0
, 2.3.2
2.6.0
, und 3.1.0
.
pwsh
- Verwenden von PowerShell Core
boolean
. Standardwert. false
.
Wenn dies zutrifft, verwenden pwsh.exe
Aufgaben, die auf Windows-Agents ausgeführt werden, von Ihrem Pfad anstelle von powershell.exe
.
validateScriptSignature
- Überprüfen der Skriptsignatur
boolean
. Optional. Verwenden Sie , wenn ScriptType = FilePath
. Standardwert. false
.
Wenn dies zutrifft, überprüft die Aufgabe zunächst, ob das angegebene Skript signiert und gültig ist, bevor es ausgeführt wird.
workingDirectory
- Arbeitsverzeichnis
string
.
Das Arbeitsverzeichnis, in dem das Skript ausgeführt wird.
Optionen für die Vorgangskontrolle
Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.
Ausgabevariablen
Keine.
Hinweise
Problembehandlung
Das Skript funktionierte lokal, aber in der Pipeline ist ein Fehler aufgetreten.
Dies tritt in der Regel auf, wenn die in der Pipeline verwendete Dienstverbindung über unzureichende Berechtigungen zum Ausführen des Skripts verfügt. Lokal wird das Skript mit Ihren Anmeldeinformationen ausgeführt und wäre erfolgreich, da Sie möglicherweise über den erforderlichen Zugriff verfügen.
Um dieses Problem zu beheben, stellen Sie sicher, dass das Dienstprinzipal/die Anmeldeinformationen für die Authentifizierung über die erforderlichen Berechtigungen verfügen. Weitere Informationen finden Sie unter Verwenden von Role-Based Access Control zum Verwalten des Zugriffs auf Ihre Azure-Abonnementressourcen.
Fehler: Die Module "<Modulname>" mit Version: "<Version>" konnten nicht gefunden werden. Wenn das Modul kürzlich installiert wurde, wiederholen Sie den Vorgang nach dem Neustart des Azure Pipelines-Task-Agents.
Azure PowerShell Task verwendet das PowerShell-Modul Azure/AzureRM/Az, um mit dem Azure-Abonnement zu interagieren. Dieses Problem tritt auf, wenn das PowerShell-Modul im gehosteten Agent nicht verfügbar ist. Daher muss für eine bestimmte Aufgabenversion bevorzugte Azure PowerShell Version in den Azure PowerShell Versionsoptionen aus der Liste der verfügbaren Versionen angegeben werden. Die installierte Software finden Sie in von Microsoft gehosteten Agents in der Tabelle Software.
Dienstverbindungsprobleme
Informationen zur Behandlung von Problemen im Zusammenhang mit Dienstverbindungen finden Sie unter Problembehandlung für Dienstverbindungen.
Beispiele
Das folgende Beispiel zeigt, wie Sie ein Skript aus einer Datei aufrufen und Skriptargumente an diese übergeben.
- 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
Die folgenden Argumente zeigen, wie ein Inlineskript aufgerufen wird.
- 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!'
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Klassischer Build, klassisches Release |
Wird ausgeführt auf | Agent, DeploymentGroup |
Forderungen | Keine |
Capabilities | Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag. |
Befehlseinschränkungen | Any |
Setzbare Variablen | Any |
Agent-Version | 2.115.0 oder höher |
Aufgabenkategorie | Bereitstellen |