テンプレートの Parameters セクションでは、スタック作成時にユーザーが指定する入力値を定義することで、テンプレートの柔軟性と再利用性を高めます。
構文
各パラメーターには名前と一連のプロパティがあります。パラメーター名には英字と数字のみ使用でき、テンプレート内で一意である必要があります。ラベル プロパティを使用してエイリアスを定義します。
次の表では、サポートされているプロパティについて説明します。
|
プロパティ |
必須 |
説明 |
|
Type |
はい |
パラメーターのデータ型。有効な値は次のとおりです:
説明
|
|
Default |
いいえ |
パラメーターのデフォルト値。スタック作成時に値が指定されていない場合、ROS はこのデフォルト値を使用します。デフォルト値が定義されていない場合は、エラーが返されます。 説明
デフォルトが |
|
AllowedValues |
いいえ |
パラメーターの有効な値。 |
|
AllowedPattern |
いいえ |
次の特殊文字の前に、バックスラッシュを 2 つ (\\) 付加します:
説明
範囲の最初または最後の文字として使用されるハイフン (-) は、エスケープする必要はありません。例: |
|
MaxLength |
いいえ |
|
|
MinLength |
いいえ |
|
|
MaxValue |
いいえ |
|
|
MinValue |
いいえ |
|
|
NoEcho |
いいえ |
|
|
Confirm |
いいえ |
NoEcho が 説明
Confirm プロパティは、NoEcho プロパティが |
|
Description |
パラメーターの説明。ローカライズされた値をサポートします:
説明
コンソールには、現在の言語設定に一致する説明が表示されます。 |
|
|
制約の説明 |
いいえ |
パラメーターの制約に違反した場合に表示されるエラーメッセージ。 |
|
Label |
いいえ |
パラメーターの UTF-8 エンコードされたエイリアス。テンプレートベースの Web フォームでは、 |
|
AssociationProperty |
いいえ |
パラメーター値を自動的に検証し、有効なオプションのリストを提供します。 ROS がサポートする AssociationProperty の値と例については、「AssociationProperty and AssociationPropertyMetadata」をご参照ください。 |
|
AssociationPropertyMetadata |
いいえ |
AssociationProperty を制約し、一致した項目をフィルタリングするマップ。 このプロパティは |
|
TextArea |
いいえ |
パラメーターが改行をサポートするかどうかを指定します。有効な値は次のとおりです:
次の例では、Content パラメーターは改行をサポートします:
|
|
Required |
いいえ |
パラメーターが必須かどうかを指定します。有効な値は次のとおりです:
次の例では、ECSInstanceId パラメーターは必須です。
説明
Required プロパティはフロントエンドの表示にのみ影響し、バックエンドでの検証を強制するものではありません。 |
|
Placeholder |
いいえ |
パラメーターの入力フィールドに表示されるヒント。
|
例:InstanceType パラメーターの定義
1 つの SLB インスタンス、2 つの ECS インスタンス、および 1 つの ApsaraDB RDS インスタンスを含む Web アプリケーション用のスタックを作成する場合を考えます。ワークロード要件に基づいて、異なる ECS インスタンスタイプを選択できます。次のコードは、テンプレートで InstanceType パラメーターを定義します:
Parameters:
InstanceType:
Type: String
AllowedValues:
- ecs.t1.small
- ecs.s1.medium
- ecs.m1.medium
- ecs.c1.large
Default: ecs.t1.small
Label: ECS インスタンスタイプ
Description: インスタンスタイプを選択します。デフォルト値:ecs.t1.small。有効な値:ecs.t1.small、ecs.s1.medium、ecs.m1.medium、および ecs.c1.large。
この定義により、スタックを作成するたびに異なる InstanceType 値を選択できます。InstanceType パラメーターを省略した場合、デフォルトの ecs.t1.small が使用されます。
次のコードは、リソース定義で InstanceType パラメーターを参照します:
Webserver:
Type: ALIYUN::ECS::Instance
InstanceType:
Ref: InstanceType