AWS Elastic Beanstalk
開発者ガイド

関数

設定ファイル内の関数を使用して、別のリソースまたは Elastic Beanstalk 設定オプションの設定からの情報で、リソースプロパティの値を入力できます。Elastic Beanstalk は、AWS CloudFormation 関数 (RefFn::GetAttFn::Join) および Elastic Beanstalk 固有の関数 Fn::GetOptionSetting をサポートしています。

参照番号

Ref を使用して、AWS リソースのデフォルトの文字列式を取得します。Ref によって返される値は、リソースタイプによって異なりますが、他の要因によって異なる場合もあります。たとえば、セキュリティグループ (AWS::EC2::SecurityGroup) は、セキュリティグループがデフォルト Amazon Virtual Private Cloud (Amazon VPC)、EC2 Classic、カスタム VPC 内のいずれにあるかに応じて、セキュリティグループの名前または ID を返します。

{ "Ref" : "resource name" }

注記

Ref の戻り値を含む各リソースタイプの詳細については、AWS CloudFormation ユーザーガイドの「AWS リソースプロパティタイプのリファレンス」を参照してください。

サンプルの Auto Scaling のライフサイクルフックから:

Resources: lifecyclehook: Type: AWS::AutoScaling::LifecycleHook Properties: AutoScalingGroupName: { "Ref" : "AWSEBAutoScalingGroup" }

Ref を使用して、同じファイルの別の個所または、別の設定ファイルで定義された AWS CloudFormation パラメータの値を取得します。

Fn::GetAtt

Fn::GetAtt を使用して、AWS リソースの属性の値を取得します。

{ "Fn::GetAtt" : [ "resource name", "attribute name"] }

サンプルの Auto Scaling のライフサイクルフックから:

Resources: lifecyclehook: Type: AWS::AutoScaling::LifecycleHook Properties: RoleARN: { "Fn::GetAtt" : [ "hookrole", "Arn"] }

詳細については、「Fn::GetAtt」を参照してください。

Fn::Join

Fn::Join を使用して、区切り文字の文字列を結合します。文字列はハードコード化したり、Fn::GetAtt または Ref の出力を使用できます。

{ "Fn::Join" : [ "delimiter", [ "string1", "string2" ] ] }

詳細については、「Fn::Join」を参照してください。

Fn::GetOptionSetting

Fn::GetOptionSetting を使用して、環境に適用する設定オプションの設定の値を取得します。

"Fn::GetOptionSetting": Namespace: "namespace" OptionName: "option name" DefaultValue: "default value"

プライベートキーを保存からの例

Resources: AWSEBAutoScalingGroup: Metadata: AWS::CloudFormation::Authentication: S3Auth: type: "s3" buckets: ["elasticbeanstalk-us-west-2-123456789012"] roleName: "Fn::GetOptionSetting": Namespace: "aws:autoscaling:launchconfiguration" OptionName: "IamInstanceProfile" DefaultValue: "aws-elasticbeanstalk-ec2-role"