AWS CloudFormation テンプレートリファレンス – 擬似パラメータ(Pseudo Parameters)

2013.11.03

AWS CloudFormationテンプレートリファレンス、第3弾は『擬似パラメータ(Pseudo Parameters)』。


目次

擬似パラメータ(Pseudo Parameters)はAWS CloudFormationで事前に定義されているパラメータです。それらについては利用者が事前にテンプレート内部で定義する必要はありません。Ref関数と同じように使う事が出来ます。

例えば、以下例では、擬似パラメータ:AWS::Regionを割り当てています。

"Outputs" {
   "MyStacksRegion" : { "Value" : { "Ref" : "AWS::Region" } }
}

現在利用可能な擬似パラメータ(Pseudo Parameters)は以下の通りです。

AWS::NotificationARNs

現在のスタックに対応する通知ARNs(Amazon Resource Names)リストを返します。

例:

{
   "AWSTemplateFormatVersion" : "2010-09-09",
   "Resources" : {
      "MyNestedStack" : {
         "Type" : "AWS::CloudFormation::Stack",
         "Properties" : {
            "TemplateURL" : "https://my-website.com/stack-spec.json",
            "NotificationARNs" : {"Ref" : "AWS::NotificationARNs"}
         }
      }
   }
}

リストから単一のARNを取得するには、Fn::Selectを使います。

"myASGrpOne" : {
   "Type" : "AWS::AutoScaling::AutoScalingGroup",
   "Version" : "2009-05-15",
   "Properties" : {
      "AvailabilityZones" : [ "us-east-1a" ],
      "LaunchConfigurationName" : { "Ref" : "MyLaunchConfiguration" },
      "MinSize" : "0",
      "MaxSize" : "0",
      "NotificationConfiguration" : {
         "TopicARN" : { "Fn::Select" : [ "0", { "Ref" : "AWS::NotificationARNs" } ] },
         "NotificationTypes" : [ "autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_LAUNCH_ERROR" ]
      }
   }
}

AWS::Region

包括的なリソースが作成されているAWSのリージョンを表す文字列を返します。

AWS::StackId

AWS CLIaws cloudformation create-stackコマンドで指定する時に利用出来る、スタックのIDを返します。

AWS::StackName

AWS CLIaws cloudformation create-stackコマンドで指定する時に利用出来る、スタックの名前を返します。