AzurePowerShell@5 - tugas Azure PowerShell v5
Gunakan tugas ini untuk menjalankan skrip PowerShell dalam lingkungan Azure. Konteks Azure diautentikasi dengan koneksi layanan Azure Resource Manager yang disediakan.
Catatan
Secara default, Azure PowerShell v5 menggunakan PowerShell Core untuk agen Linux dan Windows PowerShell untuk agen Windows. Untuk menggunakan powerShell versi terbaru pada agen Windows, atur parameter ke pwsh
true
. PowerShell Core kemudian akan digunakan sebagai gantinya.
Sintaks
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#validateScriptSignature: false # boolean. Optional. Use when ScriptType = FilePath. Validate script signature. Default: false.
#workingDirectory: # string. Working Directory.
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#workingDirectory: # string. Working Directory.
Input
azureSubscription
- Langganan Azure
Alias input: ConnectedServiceNameARM
. string
. Wajib diisi.
Langganan Azure Resource Manager untuk dikonfigurasi sebelum menjalankan PowerShell.
ScriptType
- Jenis Skrip
string
. Nilai yang diizinkan: FilePath
(Jalur File Skrip), InlineScript
(Skrip Sebaris). Nilai default: FilePath
.
Jenis skrip: jalur file atau sebaris.
ScriptPath
- Jalur Skrip
string
. Pilihan. Gunakan saat ScriptType = FilePath
.
Jalur skrip. Ini harus menjadi jalur yang sepenuhnya memenuhi syarat atau relatif terhadap direktori kerja default.
Inline
- Skrip Sebaris
string
. Pilihan. Gunakan saat ScriptType = InlineScript
. Nilai default: # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Menspesifikasikan skrip untuk dieksekusi. Panjang skrip sebaris maksimum yang didukung adalah 5000 karakter. Gunakan skrip dari file jika Anda ingin menggunakan skrip yang lebih panjang.
ScriptArguments
- Argumen Skrip
string
. Opsional. Gunakan saat ScriptType = FilePath
.
Parameter tambahan untuk diteruskan ke PowerShell. Ini bisa berupa parameter ordinal atau bernama. Tidak berlaku untuk opsi skrip sebaris.
errorActionPreference
- ErrorActionPreference
string
. Nilai yang diizinkan: stop
, continue
, dan silentlyContinue
. Nilai default: stop
.
Memilih nilai ErrorActionPreference
variabel untuk mengeksekusi skrip.
FailOnStandardError
- Gagal pada Kesalahan Standar
boolean
. Nilai default: false
.
Jika ini benar, tugas ini akan gagal jika ada kesalahan yang ditulis ke alur kesalahan atau jika ada data yang ditulis ke aliran kesalahan standar.
azurePowerShellVersion
- Versi Azure PowerShell
Alias input: TargetAzurePs
. string
. Nilai yang diizinkan: LatestVersion
(Versi terinstal terbaru), OtherVersion
(Tentukan versi lain). Nilai default: OtherVersion
.
Dalam kasus agen yang dihosting, Versi Azure PowerShell yang didukung adalah 1.0.0
, , 1.6.0
, 2.3.2
2.6.0
, dan 3.1.0
(Antrean VS2017 yang Dihosting).
Untuk memilih versi terbaru yang tersedia pada agen, pilih LatestVersion
(Versi terbaru yang diinstal).
Untuk agen privat, Anda dapat menentukan versi Azure PowerShell pilihan menggunakan OtherVersion
(Tentukan versi lain).
preferredAzurePowerShellVersion
- Versi Azure PowerShell pilihan
Alias input: CustomTargetAzurePs
. string
. Diperlukan saat TargetAzurePs = OtherVersion
.
Versi Azure PowerShell pilihan harus menjadi versi semantik yang tepat misalnya. 1.2.3
. Regex seperti 2.\*,2.3.\*
tidak didukung. Kumpulan VS2017 yang Dihosting saat ini mendukung versi 1.0.0
modul Az , , 1.6.0
2.3.2
, 2.6.0
, dan 3.1.0
.
pwsh
- Menggunakan PowerShell Core
boolean
. Nilai default: false
.
Jika ini benar, maka tugas yang berjalan pada agen Windows akan menggunakan pwsh.exe
dari jalur Anda alih-alih powershell.exe
.
validateScriptSignature
- Memvalidasi tanda tangan skrip
boolean
. Pilihan. Gunakan saat ScriptType = FilePath
. Nilai default: false
.
Jika ini benar, maka tugas pertama-tama akan memeriksa untuk memastikan skrip yang ditentukan ditandatangani dan valid sebelum menjalankannya.
workingDirectory
- Direktori Kerja
string
.
Direktori kerja tempat skrip dijalankan.
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
Pemecahan Masalah
Skrip berfungsi secara lokal, tetapi gagal dalam alur
Ini biasanya terjadi ketika koneksi layanan yang digunakan dalam alur tidak memiliki izin yang cukup untuk menjalankan skrip. Secara lokal, skrip berjalan dengan kredensial Anda dan akan berhasil karena Anda mungkin memiliki akses yang diperlukan.
Untuk mengatasi masalah ini, pastikan prinsip layanan/kredensial autentikasi memiliki izin yang diperlukan. Untuk informasi selengkapnya, lihat Menggunakan Role-Based Access Control untuk mengelola akses ke sumber daya langganan Azure Anda.
Kesalahan: Tidak dapat menemukan modul: '<nama> modul' dengan Versi: '<versi>'. Jika modul baru-baru ini diinstal, coba lagi setelah memulai ulang agen tugas Azure Pipelines
Azure PowerShell menggunakan Modul Azure/AzureRM/Az PowerShell untuk berinteraksi dengan Langganan Azure. Masalah ini terjadi ketika modul PowerShell tidak tersedia di Agen yang Dihosting. Oleh karena itu, untuk versi tugas tertentu, versi Azure PowerShell pilihan harus ditentukan dalam opsi versi Azure PowerShell dari daftar versi yang tersedia. Perangkat lunak yang diinstal dapat ditemukan dalam tabel Perangkat Lunak di agen yang dihosting Microsoft.
Masalah Koneksi Layanan
Untuk memecahkan masalah yang terkait dengan koneksi layanan, lihat Pemecahan masalah Koneksi Layanan.
Contoh
Contoh berikut menunjukkan cara memanggil skrip dari file dan meneruskan argumen skrip ke dalamnya.
- task: AzurePowerShell@5
inputs:
azureSubscription: my-arm-service-connection
scriptType: filePath
scriptPath: $(Build.SourcesDirectory)\myscript.ps1
scriptArguments:
-Arg1 val1 `
-Arg2 val2 `
-Arg3 val3
azurePowerShellVersion: latestVersion
pwsh: true
Argumen berikut menunjukkan cara memanggil skrip sebaris.
- task: AzurePowerShell@5
inputs:
azureSubscription: 'Azure subscription connection placeholder'
azurePowerShellVersion: LatestVersion
ScriptType: 'InlineScript'
Inline: |
# You can write your azure powershell scripts inline here.
# You can also pass predefined and custom variables to this script using arguments
Write-Host 'Hello'
Write-Host 'World!'
Persyaratan
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan. |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | 2.115.0 atau lebih tinggi |
Kategori tugas | Sebarkan |