AzurePowerShell@5 - tâche Azure PowerShell v5
Utilisez cette tâche pour exécuter un script PowerShell dans un environnement Azure. Le contexte Azure est authentifié avec la connexion de service Azure Resource Manager fournie.
Notes
Par défaut, Azure PowerShell v5 utilise PowerShell Core pour les agents Linux et Windows PowerShell pour les agents Windows. Pour utiliser la dernière version de PowerShell sur les agents Windows, définissez le paramètre sur pwsh
true
. PowerShell Core sera ensuite utilisé à la place.
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.
Entrées
azureSubscription
- Abonnement Azure
Alias d’entrée : ConnectedServiceNameARM
. string
. Obligatoire.
L’abonnement Azure Resource Manager à configurer avant d’exécuter PowerShell.
ScriptType
- Script Type
string
. Valeurs autorisées : FilePath
(Chemin du fichier de script), InlineScript
(script inline). Valeur par défaut : FilePath
.
Type du script : chemin du fichier ou inline.
ScriptPath
- Chemin d’accès du script
string
. facultatif. Utilisez quand ScriptType = FilePath
.
Chemin d’accès du script. Il doit s’agir d’un chemin d’accès complet ou d’un chemin d’accès relatif au répertoire de travail par défaut.
Inline
- Inline Script
string
. facultatif. Utilisez quand ScriptType = InlineScript
. Valeur par défaut : # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Spécifie le script à exécuter. La longueur maximale de script inline prise en charge est de 5 000 caractères. Utilisez un script à partir d’un fichier si vous souhaitez utiliser un script plus long.
ScriptArguments
- Script Arguments
string
. facultatif. Utilisez quand ScriptType = FilePath
.
Paramètres supplémentaires à passer à PowerShell. Il peut s’agir de paramètres ordinaux ou nommés. Non applicable pour une option de script inline.
errorActionPreference
- ErrorActionPreference
string
. Valeurs autorisées : stop
, continue
, silentlyContinue
. Valeur par défaut : stop
.
Sélectionne la valeur de la ErrorActionPreference
variable pour l’exécution du script.
FailOnStandardError
- Échec en cas d’erreur standard
boolean
. Valeur par défaut : false
.
Lorsque cela est vrai, cette tâche échoue si des erreurs sont écrites dans le pipeline d’erreurs ou si des données sont écrites dans le flux d’erreurs standard.
azurePowerShellVersion
- version Azure PowerShell
Alias d’entrée : TargetAzurePs
. string
. Valeurs autorisées : LatestVersion
(Dernière version installée), OtherVersion
(Spécifiez une autre version). Valeur par défaut : OtherVersion
.
Dans le cas d’agents hébergés, les versions Azure PowerShell prises en charge sont 1.0.0
, 1.6.0
, 2.3.2
, 2.6.0
et 3.1.0
(File d’attente VS2017 hébergée).
Pour sélectionner la dernière version disponible sur l’agent, sélectionnez LatestVersion
(Dernière version installée).
Pour les agents privés, vous pouvez spécifier une version préférée de Azure PowerShell à l’aide OtherVersion
de (Spécifier une autre version).
preferredAzurePowerShellVersion
- Version Azure PowerShell préférée
Alias d’entrée : CustomTargetAzurePs
. string
. Nécessaire lorsque TargetAzurePs = OtherVersion
.
La version Azure PowerShell par défaut doit être une version sémantique appropriée, par exemple. 1.2.3
. L’expression régulière comme 2.\*,2.3.\*
n’est pas prise en charge. Le pool VS2017 hébergé prend actuellement en charge les versions 1.0.0
du module Az , 1.6.0
, 2.3.2
, 2.6.0
et 3.1.0
.
pwsh
- Utiliser PowerShell Core
boolean
. Valeur par défaut : false
.
Si cela est vrai, les tâches exécutées sur les agents Windows utilisent pwsh.exe
à partir de votre chemin d’accès au lieu de powershell.exe
.
validateScriptSignature
- Valider la signature de script
boolean
. facultatif. Utilisez quand ScriptType = FilePath
. Valeur par défaut : false
.
Si cela est vrai, la tâche case activée d’abord pour s’assurer que le script spécifié est signé et valide avant de l’exécuter.
workingDirectory
- Répertoire de travail
string
.
Répertoire de travail dans lequel le script est exécuté.
Options de contrôle de la tâche
Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.
Variables de sortie
Aucun.
Notes
Dépannage
Le script a fonctionné localement, mais a échoué dans le pipeline
Cela se produit généralement lorsque la connexion de service utilisée dans le pipeline ne dispose pas des autorisations suffisantes pour exécuter le script. Localement, le script s’exécute avec vos informations d’identification et réussira, car vous disposez peut-être de l’accès requis.
Pour résoudre ce problème, vérifiez que le principe de service/les informations d’identification d’authentification disposent des autorisations requises. Pour plus d’informations, consultez Utiliser Role-Based Access Control pour gérer l’accès aux ressources de votre abonnement Azure.
Erreur : Impossible de trouver les modules : '<nom du> module' avec Version: '<version>'. Si le module a été installé récemment, réessayez après le redémarrage de l’agent de tâche Azure Pipelines
Azure PowerShell tâche utilise le module PowerShell Azure/AzureRM/Az pour interagir avec l’abonnement Azure. Ce problème se produit lorsque le module PowerShell n’est pas disponible sur l’agent hébergé. Par conséquent, pour une version de tâche particulière, la version Azure PowerShell préférée doit être spécifiée dans les options de version Azure PowerShell de la liste des versions disponibles. Le logiciel installé se trouve dans la table Logiciels dans les agents hébergés par Microsoft.
Problèmes de connexion de service
Pour résoudre les problèmes liés aux connexions de service, consultez Résolution des problèmes de connexion de service.
Exemples
L’exemple suivant montre comment appeler un script à partir d’un fichier et lui passer des arguments de script.
- 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
Les arguments suivants montrent comment appeler un script inline.
- 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!'
Configuration requise
Condition requise | Description |
---|---|
Types de pipelines | YAML, build classique, version classique |
S’exécute sur | Agent, DeploymentGroup |
Demandes | None |
Capabilities | Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail. |
Restrictions de commandes | Quelconque |
Variables settables | Quelconque |
Version de l’agent | 2.115.0 ou version ultérieure |
Catégorie de la tâche | Déployer |