Bagikan melalui


PowerShell@1 - Tugas PowerShell v1

Jalankan skrip PowerShell.

Sintaks

# 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 - Jenis
string. Wajib diisi. Nilai yang diizinkan: inlineScript (Skrip Sebaris), filePath (Jalur File). Nilai default: filePath.

Menentukan jenis skrip untuk tugas yang akan dijalankan: skrip sebaris atau jalur ke .ps1 file.


scriptName - Jalur Skrip
string. Diperlukan saat scriptType = filePath.

Menentukan jenis skrip untuk tugas yang akan dijalankan: skrip sebaris atau jalur ke .ps1 file.


arguments - Argumen
string.

Menentukan argumen yang diteruskan ke skrip PowerShell. Argumen dapat berupa parameter ordinal atau parameter bernama. Contohnya,-Name someName -Path -Value "Some long string value".

arguments tidak digunakan ketika targetType diatur ke inline.


workingFolder - Folder kerja
string.

Menentukan direktori kerja tempat skrip dijalankan. Jika nilai tidak ditentukan, direktori kerja adalah $(Build.SourcesDirectory).


inlineScript - Skrip Sebaris
string. Diperlukan saat scriptType = inlineScript. Nilai default: # 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".

Menentukan isi skrip. Panjang skrip sebaris maksimum yang didukung adalah 500 karakter. Gunakan skrip dari file jika Anda ingin menggunakan skrip yang lebih panjang.


failOnStandardError - Gagal pada Kesalahan Standar
boolean. Nilai default: true.

Jika nilai boolean ini adalah true, tugas gagal jika ada kesalahan yang ditulis ke alur kesalahan atau jika ada data yang ditulis ke aliran Kesalahan Standar. Jika tidak, tugas bergantung pada kode keluar untuk menentukan kegagalan.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.

Variabel output

Tidak ada.

Keterangan

PowerShell@1 hanya berjalan pada agen Windows. Untuk menjalankan PowerShell pada jenis agen lain, gunakan PowerShell@2.

Setiap sesi PowerShell hanya berlangsung selama durasi pekerjaan yang dijalankannya. Tugas yang bergantung pada apa yang telah di-bootstrap harus berada dalam pekerjaan yang sama dengan bootstrap.

Mengatur variabel sehingga dapat dibaca oleh skrip dan tugas berikutnya

Untuk mempelajari selengkapnya tentang menentukan variabel build dalam skrip, lihat Menentukan dan memodifikasi variabel build Anda dalam skrip.

Untuk mempelajari selengkapnya tentang menentukan variabel rilis dalam skrip, lihat Menentukan dan memodifikasi variabel rilis Anda dalam skrip.

Meneruskan rahasia alur dalam skrip, tetapi rahasia tidak diselubungi dalam log alur

Ketahuilah bahwa PowerShell memotong pesan kesalahan, jadi jika Anda menggunakan rahasia alur dalam skrip, rahasia dapat dipangkas dan diekspos. Misalnya, dalam skrip sebaris di bawah ini:

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

Mungkin ada pengecualian seperti: At <path_to_temp_script_file>:4 char:3:

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

Untuk menghindari masalah ini, Anda dapat menangani pengecualian ini pada tingkat skrip, atau menghindari kasus ketika rahasia alur dapat muncul di baris kode sumber dalam pesan kesalahan.

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Agen yang dihost sendiri harus memiliki kemampuan yang sesuai dengan tuntutan berikut untuk menjalankan pekerjaan yang menggunakan tugas ini: DotNetFramework
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 1.102 atau lebih tinggi
Kategori tugas Utilitas

Lihat juga