PowerShell@1 - Tarefa do PowerShell v1
Execute um script do PowerShell.
Syntax
# PowerShell v1
# Run a PowerShell script.
- task: PowerShell@1
inputs:
scriptType: 'filePath' # 'inlineScript' | 'filePath'. Required. Type. Default: filePath.
scriptName: # string. Required when scriptType = filePath. Script Path.
#arguments: # string. Arguments.
#inlineScript: # string. Required when scriptType = inlineScript. Inline Script.
# Advanced
#workingFolder: # string. Working folder.
#failOnStandardError: true # boolean. Fail on Standard Error. Default: true.
Entradas
scriptType
- Tipo
string
. Obrigatório. Valores permitidos: inlineScript
(Script Inline), filePath
(Caminho do Ficheiro). Valor predefinido: filePath
.
Especifica o tipo de script para a tarefa ser executada: um script inline ou um caminho para um .ps1
ficheiro.
scriptName
- Caminho do Script
string
. Necessário quando scriptType = filePath
.
Especifica o tipo de script para a tarefa ser executada: um script inline ou um caminho para um .ps1
ficheiro.
arguments
- Argumentos
string
.
Especifica os argumentos transmitidos para o script do PowerShell. Os argumentos podem ser parâmetros ordinais ou parâmetros nomeados. Por exemplo, -Name someName -Path -Value "Some long string value"
.
arguments
não é utilizado quando targetType
está definido como inline
.
workingFolder
- Pasta de trabalho
string
.
Especifica o diretório de trabalho onde o script é executado. Se não for especificado um valor, o diretório de trabalho é $(Build.SourcesDirectory)
.
inlineScript
- Inline Script
string
. Necessário quando scriptType = inlineScript
. Valor predefinido: # You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host "Hello World"
.
Especifica o conteúdo do script. O comprimento máximo do script inline suportado é de 500 carateres. Utilize um script de um ficheiro se quiser utilizar um script mais longo.
failOnStandardError
- Falha no Erro Padrão
boolean
. Valor predefinido: true
.
Se o valor deste valor booleano for true
, a tarefa falhará se forem escritos erros no pipeline de erros ou se forem escritos dados no fluxo de Erro Padrão. Caso contrário, a tarefa depende do código de saída para determinar a falha.
Opções de controlo de tarefas
Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.
Variáveis de saída
Nenhum.
Observações
PowerShell@1
é executado apenas em agentes do Windows. Para executar o PowerShell noutros tipos de agente, utilize PowerShell@2.
Cada sessão do PowerShell dura apenas a duração da tarefa em que é executada. As tarefas que dependem do que foi iniciado têm de estar na mesma tarefa que o bootstrap.
Definir uma variável para que possa ser lida por scripts e tarefas subsequentes
Para saber mais sobre como definir variáveis de compilação num script, veja Definir e modificar as variáveis de compilação num script.
Para saber mais sobre como definir variáveis de versão num script, veja Definir e modificar as variáveis de versão num script.
Transmitir segredos do pipeline no script, mas o segredo não está mascarado nos registos do pipeline
Tenha em atenção que o PowerShell corta as mensagens de erro, por isso, se utilizar segredos de pipeline num script, os segredos podem ser cortados e expostos. Por exemplo, no script inline abaixo:
./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>
Pode existir uma exceção como: At <path_to_temp_script_file>:4 char:3
:
+ ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+ ~~~~~~~~~~
+ <Additional exception details>
Para evitar este problema, pode processar estas exceções ao nível do script ou evitar casos em que os segredos do pipeline possam aparecer nas linhas de código fonte nas mensagens de erro.
Requisitos
Requisito | Description |
---|---|
Tipos de pipeline | YAML, Compilação clássica, Versão clássica |
É executado em | Agent, DeploymentGroup |
Exigências | Os agentes autoalojados têm de ter capacidades que correspondam às seguintes exigências para executar tarefas que utilizem esta tarefa: DotNetFramework |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa. |
Restrições de comandos | Qualquer |
Variáveis de definição | Qualquer |
Versão do agente | 1.102 ou superior |
Categoria da tarefa | Utilitário |