AzurePowerShell@5: tarea de Azure PowerShell v5
Use esta tarea para ejecutar un script de PowerShell dentro de un entorno de Azure. El contexto de Azure se autentica con la conexión de servicio de Azure Resource Manager proporcionada.
Nota:
De forma predeterminada, Azure PowerShell v5 usa PowerShell Core para agentes de Linux y Windows PowerShell para agentes de Windows. Para usar la versión más reciente de PowerShell en agentes de Windows, establezca el parámetro pwsh
en true
. PowerShell Core se usará en su lugar.
Sintaxis
# 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.
Entradas
azureSubscription
-
de suscripción de Azure
Alias de entrada: ConnectedServiceNameARM
.
string
. Obligatorio.
La suscripción de Azure Resource Manager que se va a configurar antes de ejecutar PowerShell.
tipo de script de ScriptType
-
string
. Valores permitidos: FilePath
(ruta de acceso del archivo de script), InlineScript
(script en línea). Valor predeterminado: FilePath
.
Tipo del script: ruta de acceso del archivo o insertada.
ScriptPath
-
ruta de acceso de script
string
. Opcional. Use cuando ScriptType = FilePath
.
Ruta de acceso del script. Debe ser una ruta de acceso completa o una relativa al directorio de trabajo predeterminado.
de script insertado de
string
. Opcional. Use cuando ScriptType = InlineScript
. Valor predeterminado: # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Especifica el script que se va a ejecutar. La longitud máxima admitida del script en línea es de 5000 caracteres. Use un script de un archivo si desea usar un script más largo.
argumentos de script de ScriptArguments
-
string
. Opcional. Use cuando ScriptType = FilePath
.
Parámetros adicionales que se van a pasar a PowerShell. Pueden ser parámetros ordinales o con nombre. No es aplicable a una opción de script insertado.
errorActionPreference
-
errorActionPreference
string
. Valores permitidos: stop
, continue
, silentlyContinue
. Valor predeterminado: stop
.
Selecciona el valor de la variable ErrorActionPreference
para ejecutar el script.
FailOnStandardError
-
error en la de error estándar
boolean
. Valor predeterminado: false
.
Cuando esto es true, se producirá un error en esta tarea si se escriben errores en la canalización de errores o si se escribe algún dato en el flujo de error estándar.
azurePowerShellVersion
-
versión de Azure PowerShell
Alias de entrada: TargetAzurePs
.
string
. Valores permitidos: LatestVersion
(versión instalada más reciente), OtherVersion
(especifique otra versión). Valor predeterminado: OtherVersion
.
En el caso de los agentes hospedados, las versiones admitidas de Azure PowerShell se 1.0.0
, 1.6.0
, 2.3.2
, 2.6.0
y 3.1.0
(cola de VS2017 hospedada).
Para elegir la versión más reciente disponible en el agente, seleccione LatestVersion
(versión instalada más reciente).
En el caso de los agentes privados, puede especificar una versión preferida de Azure PowerShell mediante OtherVersion
(Especifique otra versión).
preferredAzurePowerShellVersion
-
versión preferida de Azure PowerShell
Alias de entrada: CustomTargetAzurePs
.
string
. Obligatorio cuando TargetAzurePs = OtherVersion
.
La versión preferida de Azure PowerShell debe ser una versión semántica adecuada, por ejemplo.
1.2.3
. No se admite regex como 2.\*,2.3.\*
. El grupo de VS2017 hospedado admite actualmente versiones del módulo Az 1.0.0
, 1.6.0
, 2.3.2
, 2.6.0
y 3.1.0
.
pwsh
-
Usar powerShell Core
boolean
. Valor predeterminado: false
.
Si esto es cierto, las tareas que se ejecutan en agentes de Windows usarán pwsh.exe
desde la ruta de acceso en lugar de powershell.exe
.
validateScriptSignature
-
validar la firma de script
boolean
. Opcional. Use cuando ScriptType = FilePath
. Valor predeterminado: false
.
Si esto es true, la tarea comprobará primero para asegurarse de que el script especificado está firmado y válido antes de ejecutarlo.
de directorio de trabajo de
string
.
Directorio de trabajo donde se ejecuta el script.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
Solución de problemas
El script funcionó localmente, pero se produjo un error en la canalización.
Esto suele ocurrir cuando la conexión de servicio usada en la canalización no tiene permisos suficientes para ejecutar el script. Localmente, el script se ejecuta con sus credenciales y se realizaría correctamente ya que usted puede tener el acceso requerido.
Para resolver este problema, asegúrese de que las credenciales de autenticación o principio de servicio tienen los permisos necesarios. Para más información, consulte Uso de Access Control basado en rol para administrar el acceso a los recursos de la suscripción de Azure.
Error: No se encontraron los módulos: "<nombre del módulo>" con versión: "<versión>". Si el módulo se instaló recientemente, vuelva a intentarlo después de reiniciar el agente de tareas de Azure Pipelines.
La tarea de Azure PowerShell usa el módulo Azure/AzureRM/Az de PowerShell para interactuar con la suscripción de Azure. Este problema se produce cuando el módulo de PowerShell no está disponible en el agente hospedado. Por lo tanto, para una versión de tarea determinada, versión de Azure PowerShell preferida debe especificarse en las opciones de versión de Azure PowerShell de la lista de versiones disponibles. El software instalado se puede encontrar en la tabla software de en agentes hospedados por Microsoft.
Problemas de conexión de servicio
Para solucionar problemas relacionados con las conexiones de servicio, consulte solución de problemas de conexión de servicio.
Ejemplos
En el ejemplo siguiente se muestra cómo invocar un script desde un archivo y pasar argumentos de script a él.
- 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
Los argumentos siguientes muestran cómo invocar un script insertado.
- 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!'
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
demandas | Ninguno |
funcionalidades de |
Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
restricciones de comandos | Cualquiera |
variables settable | Cualquiera |
Versión del agente | 2.115.0 o superior |
Categoría de tarea | Desplegar |