AWS::CloudFormation::Interface メタデータを使用した CloudFormation パラメータの整理 - AWS CloudFormation

AWS::CloudFormation::Interface メタデータを使用した CloudFormation パラメータの整理

AWS::CloudFormation::Interface は、CloudFormation コンソールでパラメータをグループ化およびソートする方法を定義するメタデータキーです。デフォルトでは、コンソールでスタックを作成または更新すると、コンソールに入力パラメータが論理 ID のアルファベット順にリストされます。ユーザーがパラメーター値を効率的に指定できるように、このキーを使用して、パラメーターのグループ化とソートを独自に定義することができます。たとえば、すべての EC2 関連パラメーターを 1 つのグループに含め、すべての VPC 関連パラメーターを別のグループに含めることができます。

メタデータキーで、作成するグループ、各グループに含めるパラメーター、コンソールで各パラメーターがそのグループ内に表示される順序を指定できます。

パラメータのラベルを定義することもできます。ラベルは、パラメーターの論理 ID の代わりにコンソールに表示されるフレンドリ名または説明です。ラベルは、各パラメーターに指定する値をユーザーが理解するのに役立ちます。たとえば、KeyPair パラメーターには Select an EC2 key pair というラベルを付けることができます。

メタデータキーで参照するすべてのパラメーターは、テンプレートの Parameters セクションで宣言する必要があります。

注記

CloudFormation コンソールのみが AWS::CloudFormation::Interface メタデータキーを使用します。AWS CLI および API 呼び出しはこのキーを使用しません。

構文

CloudFormation テンプレートでこのエンティティを宣言するには、次の構文を使用します。

JSON

"Metadata" : { "AWS::CloudFormation::Interface" : { "ParameterGroups": [ { "Label": { "default": "Group Label" }, "Parameters": [ "Parameter1", "Parameter2" ] } ], "ParameterLabels": { "Parameter1": { "default": "Friendly Name for Parameter1" } } } }

YAML

Metadata: AWS::CloudFormation::Interface: ParameterGroups: - Label: default: Group Label Parameters: - Parameter1 - Parameter2 ParameterLabels: Parameter1: default: Friendly Name for Parameter1

プロパティ

ParameterGroups

パラメーターグループタイプ、グループ名を指定する場所、各グループ内のパラメーター、パラメーターが表示される順序のリスト。

必須: いいえ

Label

パラメーターグループの名前。

必須: いいえ

default

CloudFormation コンソールがパラメータグループの命名に使用するデフォルトのラベル。

必須: いいえ

タイプ: 文字列

Parameters

グループに含めるパラメーター論理 ID (大文字小文字が区別されます) のリスト。パラメーターは、テンプレートの Parameters セクションで既に定義されている必要があります。パラメーターは、1 つのパラメーターグループにのみ含めることができます。

コンソールには、Other parameters グループ内の、パラメーターグループに関連付けないパラメーターがアルファベット順でリストされます。

必須: いいえ

タイプ: 文字列値のリスト

ParameterLabels

スタックが作成または更新されたときに CloudFormation コンソールに表示されるパラメータとそのフレンドリ名のマッピング。

必須: いいえ

パラメータラベル

パラメーターのラベル。ラベルは、スタックが作成または更新されるときに CloudFormation コンソールが [Specify Parameters] (パラメータを指定) に表示するフレンドリ名または説明を定義します。パラメータラベルは、テンプレートの Parameters セクションで宣言された有効なパラメーターの論理 ID (大文字と小文字を区別) にする必要があります。

必須: いいえ

default

CloudFormation コンソールがパラメータの命名に使用するデフォルトのラベル。

必須: いいえ

タイプ: 文字列

次の例では、2 つのパラメーターグループ Network Configuration および Amazon EC2 Configuration を定義します。Network Configuration グループには、VPCIDSubnetIdSecurityGroupID の各パラメーターが含まれます。これらは、テンプレートの Parameters セクション (非表示) で定義されます。コンソールにこれらのパラメーターが表示される順序は、パラメーターがリストされる順序によって定義されます (先頭は VPCID パラメーター)。この例では、Amazon EC2 Configuration パラメーターも同様にグループ化およびソートされています。

この例では、VPCID パラメーターのラベルも定義しています。コンソールには、パラメータの論理 ID (VPCID) の代わりに [Which VPC should this be deployed to? (どの VPC をこれにデプロイする必要がありますか。)] が表示されます。

JSON

"Metadata" : { "AWS::CloudFormation::Interface" : { "ParameterGroups" : [ { "Label" : { "default" : "Network Configuration" }, "Parameters" : [ "VPCID", "SubnetId", "SecurityGroupID" ] }, { "Label" : { "default":"Amazon EC2 Configuration" }, "Parameters" : [ "InstanceType", "KeyName" ] } ], "ParameterLabels" : { "VPCID" : { "default" : "Which VPC should this be deployed to?" } } } }

YAML

Metadata: AWS::CloudFormation::Interface: ParameterGroups: - Label: default: "Network Configuration" Parameters: - VPCID - SubnetId - SecurityGroupID - Label: default: "Amazon EC2 Configuration" Parameters: - InstanceType - KeyName ParameterLabels: VPCID: default: "Which VPC should this be deployed to?"

コンソールに表示されたパラメータグループ

次の図は、この例のメタデータキーを使用すると、スタックが作成または更新されたときにパラメータグループがコンソールにどのように表示されるかを示しています。コンソールのパラメータグループ

コンソールにこの例のパラメータグループが表示されます。