AzureResourceManagerTemplateDeployment@3 - Tugas penyebaran templat ARM v3
Gunakan tugas ini untuk menyebarkan templat Azure Resource Manager (ARM) ke semua cakupan penyebaran.
Sintaks
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
#useWithoutJSON: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Use individual output values without JSON.Stringify applied. Default: false.
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
Input
deploymentScope
-
Cakupan penyebaran
string
. Wajib diisi. Nilai yang diizinkan: Management Group
, Subscription
, dan Resource Group
. Nilai default: Resource Group
.
Cakupan penyebaran. Pelajari selengkapnya tentang cakupan penyebaran.
azureResourceManagerConnection
-
Koneksi azure Resource Manager
Alias input: ConnectedServiceName
.
string
. Wajib diisi.
Menentukan koneksi layanan Azure Resource Manager dengan akses ke cakupan penyebaran yang dipilih.
subscriptionId
-
Berlangganan
Alias input: subscriptionName
.
string
. Diperlukan saat deploymentScope != Management Group
.
Menentukan langganan Azure.
Penting
Nilai yang ditentukan harus berupa ID langganan dan bukan nama langganan.
action
-
Tindakan
string
. Diperlukan saat deploymentScope = Resource Group
. Nilai yang diizinkan: Create Or Update Resource Group
, DeleteRG
(Hapus grup sumber daya). Nilai default: Create Or Update Resource Group
.
Tindakan yang akan dilakukan pada sumber daya Azure atau grup sumber daya.
resourceGroupName
-
Grup sumber daya
string
. Diperlukan saat deploymentScope = Resource Group
.
Menyediakan nama grup sumber daya.
location
-
Lokasi
string
. Diperlukan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Cakupan penyebaran Grup Sumber Daya: Lokasi untuk menyebarkan grup sumber daya. Jika grup sumber daya sudah ada di langganan Azure, maka nilai ini akan diabaikan. Cakupan penyebaran lainnya: Lokasi untuk menyimpan metadata penyebaran.
templateLocation
-
Lokasi templat
string
. Diperlukan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
. Nilai yang diizinkan: Linked artifact
, URL of the file
. Nilai default: Linked artifact
.
Lokasi Templat dan file Parameter JSON. Pilih Artefak tertaut jika file adalah bagian dari artefak kode/build yang ditautkan. Untuk artefak yang ditautkan, Anda juga dapat menentukan jalur ke file Bicep. Pilih URL file jika file JSON terletak di URL http/https yang dapat diakses publik. Untuk menggunakan file yang disimpan di akun penyimpanan privat, ambil dan sertakan token tanda tangan akses bersama (SAS) di URL templat. Contoh: <blob_storage_url>/template.json?
. Untuk mengunggah file parameter ke akun penyimpanan dan menghasilkan token SAS, Anda dapat menggunakan tugas penyalinan file Azure atau mengikuti langkah-langkah menggunakan PowerShell atau Azure CLI.
csmFileLink
-
Tautan templat
string
. Diperlukan saat templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menentukan URL file templat. CONTOH URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json
Untuk menyebarkan templat yang disimpan di akun penyimpanan privat, ambil dan sertakan token tanda tangan akses bersama (SAS) di URL templat. Contoh: <blob_storage_url>/template.json?<SAStoken>
. Untuk mengunggah file templat (atau templat tertaut) ke akun penyimpanan dan menghasilkan token SAS, gunakan tugas penyalinan file Azure atau ikuti langkah-langkah menggunakan PowerShell atau Azure CLI.
Untuk menampilkan parameter templat dalam kisi, klik di ...
samping kotak teks ganti parameter templat. Fitur ini mengharuskan aturan CORS diaktifkan di sumbernya. Jika templat berada dalam blob penyimpanan Azure, lihat Berbagi Sumber Daya Lintas Asal untuk mengaktifkan CORS.
csmParametersFileLink
-
Tautan parameter templat
string
. Pilihan. Gunakan saat templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menentukan URL file parameter. CONTOH URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json
Untuk menggunakan file yang disimpan di akun penyimpanan privat, ambil dan sertakan token tanda tangan akses bersama (SAS) di URL templat. Contoh: <blob_storage_url>/template.json?<SAStoken>
. Untuk mengunggah file templat (atau templat tertaut) ke akun penyimpanan dan menghasilkan token SAS, gunakan tugas penyalinan file Azure atau ikuti langkah-langkah menggunakan PowerShell atau Azure CLI.
Untuk menampilkan parameter templat dalam kisi, klik di ...
samping kotak teks Ganti parameter templat. Fitur ini mengharuskan aturan CORS diaktifkan di sumbernya. Jika templat berada dalam blob penyimpanan Azure, lihat Berbagi Sumber Daya Lintas Asal untuk mengaktifkan CORS.
csmFile
-
Template
string
. Diperlukan saat templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menentukan jalur atau pola yang menunjuk ke templat Azure Resource Manager. Pelajari selengkapnya tentang templat Azure Resource Manager. Untuk segera memulai, gunakan templat sampel ini. Mendukung file Bicep saat Azure CLI versi > 2.20.0.
csmParametersFile
-
Parameter templat
string
. Pilihan. Gunakan saat templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Tentukan jalur atau pola yang menunjuk untuk file parameter untuk templat Azure Resource Manager. Mendukung file Bicep Param saat Azure CLI versi > 2.47.0.
overrideParameters
-
Mengesampingkan parameter templat
string
. Pilihan. Gunakan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menentukan parameter templat yang akan diambil alih.
Untuk melihat parameter templat dalam kisi, klik di ...
samping kotak teks Ambil Alih Parameter. Fitur ini mengharuskan aturan CORS diaktifkan di sumbernya. Jika templat berada di blob penyimpanan Azure, referensikan string ini untuk mengaktifkan CORS, atau ketik parameter templat untuk diambil alih di kotak teks.
Contoh: -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre)
.
Jika nilai parameter memiliki beberapa kata, sertakan kata-kata dalam tanda kutip, bahkan jika Anda meneruskan nilai dengan menggunakan variabel.
Contohnya,-name "parameter value" -name2 "$(var)"
.
Untuk mengambil alih parameter jenis objek, gunakan objek JSON yang diurai.
Contohnya,-options ["option1"] -map {"key1": "value1" }
.
deploymentMode
-
Mode penyebaran
string
. Diperlukan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
. Nilai yang diizinkan: Incremental
, Complete
, Validation
(Hanya validasi). Nilai default: Incremental
.
Incremental
Mode menangani penyebaran sebagai pembaruan inkremental ke grup sumber daya. Ini meninggalkan sumber daya yang tidak berubah yang ada di grup sumber daya tetapi tidak ditentukan dalam templat.
Complete
mode menghapus sumber daya yang tidak ada dalam templat Anda. Mode lengkap membutuhkan waktu yang relatif lebih lama daripada mode inkremental. Jika waktu tugas habis, pertimbangkan untuk meningkatkan waktu habis atau mengubah ke Incremental
mode.
Peringatan
Mode lengkap akan menghapus semua sumber daya yang ada dalam grup sumber daya yang tidak ditentukan dalam templat. Tinjau apakah grup sumber daya yang Anda sebarkan tidak berisi sumber daya yang diperlukan yang tidak ditentukan dalam templat.
Validate
mode memungkinkan Anda menemukan masalah dengan templat sebelum membuat sumber daya aktual.
Catatan
Mode ini Validate
selalu membuat grup sumber daya, meskipun tidak ada sumber daya yang disebarkan.
Pelajari selengkapnya tentang mode penyebaran.
deploymentName
-
Nama penyebaran
string
. Opsional. Gunakan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menentukan nama penyebaran grup sumber daya yang akan dibuat.
deploymentOutputs
-
Output penyebaran
string
. Pilihan. Gunakan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Menyediakan nama untuk variabel untuk variabel output, yang berisi bagian output dari objek penyebaran saat ini dalam format string. Anda dapat menggunakan ConvertFrom-Json
cmdlet PowerShell untuk mengurai objek JSON dan mengakses nilai output individual. Pelajari selengkapnya tentang output penyebaran.
addSpnToEnvironment
-
Mengakses detail perwakilan layanan dalam mengambil alih parameter
boolean
. Pilihan. Gunakan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
. Nilai default: false
.
Menambahkan ID perwakilan layanan dan kunci titik akhir Azure yang dipilih untuk menjadi lingkungan eksekusi skrip. Variabel $servicePrincipalId
dan $servicePrincipalKey
dapat berada dalam parameter penggantian, seperti -key $servicePrincipalKey
.
useWithoutJSON
-
Gunakan nilai output individual tanpa JSON. Stringify diterapkan
boolean
. Pilihan. Gunakan saat action = Create Or Update Resource Group || deploymentScope != Resource Group
. Nilai default: false
.
Nilai output individual sedang dikonversi melalui JSON. Stringify secara default. Jika Anda ingin menggunakan nilai output apa adanya tanpa mengonversinya melalui JSON. Stringify, aktifkan opsi ini. Untuk detail selengkapnya, lihat ini.
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
Catatan
Tugas ini mendukung file Bicep saat Azure CLI versi > 2.20.0.
- Menambahkan dukungan untuk penyebaran di semua cakupan penyebaran.
- Menghapus semua tindakan terkait VM.
Persyaratan
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
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 | 2.119.1 atau lebih tinggi |
Kategori tugas | Sebarkan |