Partilhar via


PowerShell@1 - Tarefa PowerShell v1

Execute um script do PowerShell.

Sintaxe

# 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.

Insumos

scriptType - Tipo
string. Obrigatório. Valores permitidos: inlineScript (Inline Script), filePath (File Path). Valor padrão: filePath.

Especifica o tipo de script para a tarefa a ser executada: um script embutido ou um caminho para um arquivo .ps1.


scriptName - caminho do script
string. Necessário quando scriptType = filePath.

Especifica o tipo de script para a tarefa a ser executada: um script embutido ou um caminho para um arquivo .ps1.


arguments - Argumentos
string.

Especifica os argumentos passados 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 é usado quando targetType está definido como inline.


workingFolder - Pasta de trabalho
string.

Especifica o diretório de trabalho onde o script é executado. Se um valor não for especificado, o diretório de trabalho será $(Build.SourcesDirectory).


inlineScript - Script Inline
string. Necessário quando scriptType = inlineScript. Valor padrão: # 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 suportado do script embutido é de 500 caracteres. Use um script de um arquivo se quiser usar um script mais longo.


failOnStandardError - falha no erro padrão
boolean. Valor padrão: true.

Se o valor desse booleano for true, a tarefa falhará se algum erro for gravado no pipeline de erros ou se algum dado for gravado 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 controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de 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 em outros tipos de agente, use PowerShell@2.

Cada sessão do PowerShell dura apenas a duração do trabalho em que é executada. As tarefas que dependem do que foi inicializado devem estar no mesmo trabalho que o bootstrap.

Defina uma variável para que possa ser lida por scripts e tarefas subsequentes

Para saber mais sobre como definir variáveis de compilação em um script, consulte Definir e modificar suas variáveis de compilação em um script.

Para saber mais sobre como definir variáveis de liberação em um script, consulte Definir e modificar suas variáveis de liberação em um script.

Passando segredos de pipeline no script, mas o segredo não é mascarado nos logs de pipeline

Lembre-se de que o PowerShell corta mensagens de erro, portanto, se você usar segredos de pipeline em um script, os segredos poderão ser cortados e expostos. Por exemplo, no script embutido abaixo:

./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>

Pode haver 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 esse problema, você pode lidar com essas exceções em um nível de script ou evitar casos em que segredos de pipeline podem aparecer em linhas de código-fonte em mensagens de erro.

Requerimentos

Requisito Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Os agentes auto-hospedados devem ter recursos que correspondam às seguintes demandas executar trabalhos que usam essa tarefa: DotNetFramework
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 1.102 ou superior
Categoria de tarefa Utilidade

Ver também