Saat membuat template, Anda mungkin ingin mengaitkan sebuah parameter dengan set parameter yang berbeda. Jika parameter memiliki beberapa nilai, Anda dapat mengonfigurasi set parameter yang berbeda berdasarkan nilai yang ditentukan untuk parameter tersebut. Topik ini menjelaskan cara menampilkan set parameter yang berbeda berdasarkan nilai dari sebuah parameter. Dalam contoh ini, parameter targetPeriodUnit dan targetPeriod ditampilkan berdasarkan nilai dari parameter targetInstanceChargeType.
Sintaksis Template
Anda dapat menentukan parameter AssociationProperty dan AssociationPropertyMetadata di bagian Parameters dari sebuah template sehingga set parameter yang berbeda ditampilkan berdasarkan nilai yang Anda tentukan untuk sebuah parameter. Dalam contoh ini, nilai dari parameter targetInstanceChargeType ditentukan. Untuk AssociationPropertyMetadata, Anda harus menentukan fungsi dalam Visible untuk menentukan apakah set parameter yang berbeda ditampilkan. Contoh kode berikut menunjukkan cara menentukan Visible:
Visible:
Condition: Object #Satu atau lebih kondisi berdasarkan mana set parameter yang berbeda ditampilkan.Informasi berikut menjelaskan fungsi yang dapat Anda tentukan untuk Condition dan contohnya:
Contoh Template
Dalam contoh template berikut, AssociationProperty ditentukan untuk mendapatkan metode penagihan, dan AssociationPropertyMetadata ditentukan untuk menambahkan kondisi filter untuk set parameter yang berbeda. Dengan cara ini, konsol ROS dapat menyaring parameter saat Anda membuat sumber daya.
ROSTemplateFormatVersion: '2015-09-01'
Description:
en: Template ini mendukung instance tunggal dengan gambar kustom, termasuk skenario menggunakan VPC, VSwitch, SecurityGroup yang ada atau membuat baru dan membuat ECS dengan model prabayar atau pascabayar.
Parameters:
targetInstanceChargeType:
Description:
name-en: targetInstanceChargeType
Type: String
AssociationProperty: ChargeType
targetPeriodUnit:
Description:
name-en: Unit periode langganan
Type: String
AllowedValues:
- Minggu
- Bulan
Default: Bulan
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Not:
Fn::Equals:
- ${targetInstanceChargeType}
- PostPaid
targetPeriod:
Description:
name-en: Periode langganan instance
en: 'Nilai valid: Nilai valid ketika PeriodUnit disetel ke Minggu: 1, 2, 3, dan 4. Nilai valid ketika PeriodUnit disetel ke Bulan: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, dan 60.'
Type: Number
AllowedValues:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 12
- 24
- 36
- 48
- 60
Default: 1
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Not:
Fn::Equals:
- ${targetInstanceChargeType}
- PostPaidParameter:
targetInstanceChargeType: metode penagihan. Parameter AssociationProperty disetel ke ChargeType. Dalam hal ini, konsol ROS menyaring parameter berdasarkan nilai dari parameter targetInstanceChargeType.
targetPeriodUnit: unit metode penagihan langganan. Parameter AssociationPropertyMetadata disetel ke
{"Visible": {"Condition": {"Fn::Not": {"Fn::Equals": ["${targetInstanceChargeType}","PostPaid"]}}}}, yang menentukan bahwa parameter targetPeriodUnit ditampilkan jika parameter targetInstanceChargeType tidak disetel ke PostPaid.CatatanNilai valid dari parameter targetInstanceChargeType adalah PrePaid dan PostPaid.
targetPeriod: durasi sumber daya langganan yang ingin Anda beli. Parameter AssociationPropertyMetadata disetel ke
{"Visible": {"Condition": {"Fn::Not": {"Fn::Equals": ["${targetInstanceChargeType}","PostPaid"]}}}}, yang menentukan bahwa parameter targetPeriod ditampilkan jika parameter targetInstanceChargeType tidak disetel ke PostPaid.
Contoh GUI
Jika Anda memilih metode penagihan langganan saat menggunakan template di atas untuk membuat tumpukan, konsol ROS menampilkan parameter seperti pada gambar berikut.
