Sdílet prostřednictvím


PowerShell@1 – úloha PowerShellu v1

Spusťte skript PowerShellu.

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.

Vstupy

scriptType - Typ
string. Povinná hodnota. Povolené hodnoty: inlineScript (vložený skript), filePath (Cesta k souboru). Výchozí hodnota: filePath.

Určuje typ skriptu pro úlohu, která se má spustit: vložený skript nebo cesta k .ps1 souboru.


scriptName - Cesta ke skriptu
string. Vyžaduje se, když scriptType = filePath.

Určuje typ skriptu pro úlohu, která se má spustit: vložený skript nebo cesta k .ps1 souboru.


arguments - Argumenty
string.

Určuje argumenty předané skriptu PowerShellu. Argumenty můžou být řadové parametry nebo pojmenované parametry. Například, -Name someName -Path -Value "Some long string value".

arguments se nepoužívá, pokud targetType je nastavená hodnota inline.


workingFolder - Pracovní složka
string.

Určuje pracovní adresář, ve kterém se skript spouští. Pokud není zadaná hodnota, pracovní adresář je $(Build.SourcesDirectory).


inlineScript - Vložený skript
string. Vyžaduje se, když scriptType = inlineScript. Výchozí hodnota: # 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".

Určuje obsah skriptu. Maximální podporovaná délka vloženého skriptu je 500 znaků. Pokud chcete použít delší skript, použijte skript ze souboru.


failOnStandardError - Selhání při standardní chybě
boolean. Výchozí hodnota: true.

Pokud je truehodnota této logické hodnoty , úloha selže, pokud jsou do kanálu chyb zapsány jakékoli chyby nebo pokud jsou do streamu Standardní chyby zapsána nějaká data. V opačném případě úloha při určování selhání spoléhá na ukončovací kód.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Poznámky

PowerShell@1 běží jenom na agentech Windows. Pokud chcete Spustit PowerShell na jiných typech agentů, použijte PowerShell@2.

Každá relace PowerShellu trvá jenom po dobu trvání úlohy, ve které se spouští. Úkoly, které závisí na tom, co bylo spuštěno, musí být ve stejné úloze jako bootstrap.

Nastavení proměnné tak, aby ji bylo možné číst pomocí následných skriptů a úloh

Další informace o definování proměnných sestavení ve skriptu najdete v tématu Definování a úprava proměnných sestavení ve skriptu.

Další informace o definování proměnných verze ve skriptu najdete v tématu Definování a úprava proměnných vydané verze ve skriptu.

Předávání tajných kódů kanálu ve skriptu, ale tajný kód není maskovaný v protokolech kanálu

Mějte na paměti, že PowerShell chybové zprávy přeruší, takže pokud použijete tajné kódy kanálu ve skriptu, je možné je oříznout a vystavit. Například ve vloženého skriptu níže:

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

Může dojít k výjimce, jako je: At <path_to_temp_script_file>:4 char:3

+   ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+   ~~~~~~~~~~
    + <Additional exception details>

Pokud se chcete tomuto problému vyhnout, můžete tyto výjimky zpracovat na úrovni skriptu nebo se vyhnout případům, kdy by se tajné kódy kanálu mohly objevit na řádcích zdrojového kódu v rámci chybových zpráv.

Požadavky

Požadavek Popis
Typy kanálů YAML, klasický build, klasická verze
Běží na Agent, DeploymentGroup
Požadavky Agenti v místním prostředí musí mít funkce , které odpovídají následujícím požadavkům na spouštění úloh, které používají tuto úlohu: DotNetFramework
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 1.102 nebo vyšší
Kategorie úloh Nástroj

Viz také