PowerShell@1 - Attività powerShell v1
Eseguire uno script di PowerShell.
Sintassi
# 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.
Input
scriptType
- Digitare
string
. Obbligatorio. Valori consentiti: inlineScript
(Script inline), filePath
(Percorso file). Valore predefinito: filePath
.
Specifica il tipo di script da eseguire per l'attività: uno script inline o un percorso di un .ps1
file.
scriptName
- Percorso script
string
. Obbligatorio quando scriptType = filePath
.
Specifica il tipo di script da eseguire per l'attività: uno script inline o un percorso di un .ps1
file.
arguments
- Argomenti
string
.
Specifica gli argomenti passati allo script di PowerShell. Gli argomenti possono essere parametri ordinali o parametri denominati. Ad esempio, -Name someName -Path -Value "Some long string value"
.
arguments
non viene usato quando targetType
è impostato su inline
.
workingFolder
- Cartella di lavoro
string
.
Specifica la directory di lavoro in cui viene eseguito lo script. Se un valore non è specificato, la directory di lavoro è $(Build.SourcesDirectory)
.
inlineScript
- Inline Script
string
. Obbligatorio quando scriptType = inlineScript
. Valore predefinito: # 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"
.
Specifica il contenuto dello script. La lunghezza massima supportata dello script inline è di 500 caratteri. Usare uno script da un file se si vuole usare uno script più lungo.
failOnStandardError
- Errore standard non riuscita
boolean
. Valore predefinito: true
.
Se il valore di questo booleano è true
, l'attività ha esito negativo se eventuali errori vengono scritti nella pipeline di errore o se i dati vengono scritti nel flusso di errori standard. In caso contrario, l'attività si basa sul codice di uscita per determinare l'errore.
Opzioni di controllo delle attività
Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.
Variabili di output
Nessuno.
Osservazioni
PowerShell@1
viene eseguito solo sugli agenti Windows. Per eseguire PowerShell in altri tipi di agente, usare PowerShell@2.
Ogni sessione di PowerShell dura solo per la durata del processo in cui viene eseguita. Le attività che dipendono da ciò che è stato avviato devono trovarsi nello stesso processo del bootstrap.
Impostare una variabile in modo che possa essere letto dagli script e dalle attività successive
Per altre informazioni sulla definizione delle variabili di compilazione in uno script, vedere Definire e modificare le variabili di compilazione in uno script.
Per altre informazioni sulla definizione delle variabili di rilascio in uno script, vedere Definire e modificare le variabili di versione in uno script.
Passaggio dei segreti della pipeline nello script, ma il segreto non viene mascherato nei log della pipeline
Tenere presente che PowerShell taglia i messaggi di errore, quindi se si usano segreti della pipeline in uno script, i segreti potrebbero essere eliminati ed esposti. Ad esempio, nello script inline seguente:
./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>
Potrebbe esserci un'eccezione come: At <path_to_temp_script_file>:4 char:3
+ ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+ ~~~~~~~~~~
+ <Additional exception details>
Per evitare questo problema, è possibile gestire queste eccezioni a livello di script oppure evitare casi in cui i segreti della pipeline potrebbero essere visualizzati nelle righe di codice sorgente all'interno di messaggi di errore.
Requisiti
Requisito | Descrizione |
---|---|
Tipi di pipeline | YAML, build classica, versione classica |
Esecuzione in | Agente, DeploymentGroup |
Richieste | Gli agenti self-hosted devono avere funzionalità che corrispondono alle richieste seguenti per eseguire processi che usano questa attività: DotNetFramework |
Capabilities | Questa attività non soddisfa le richieste per le attività successive nel processo. |
Restrizioni dei comandi | Qualsiasi |
Variabili impostabili | Qualsiasi |
Versione agente | 1.102 o versione successiva |
Categoria attività | Utilità |
Vedi anche
- Usare uno script di PowerShell per personalizzare la pipeline - ApplyVersionToAssemblies.ps1
- Altre informazioni sugli script di PowerShell