Funciones - AWS Elastic Beanstalk

Funciones

Puede utilizar funciones en los archivos de configuración para rellenar valores de propiedades de recursos con información de otros recursos o de otros valores de opciones de configuración de Elastic Beanstalk. Elastic Beanstalk admite funciones de AWS CloudFormation (Ref, Fn::GetAtt, Fn::Join) y una función específica de Elastic Beanstalk Fn::GetOptionSetting.

Ref.

Utilice Refpara recuperar la representación predeterminada en forma de cadena de un recurso de AWS. El valor devuelto por Refdepende del tipo de recurso y a veces depende también de otros factores. Por ejemplo, un grupo de seguridad (AWS::EC2::SecurityGroup) devuelve el nombre o ID del grupo de seguridad, en función de si el grupo de seguridad se encuentra en una Amazon Virtual Private Cloud (Amazon VPC) predeterminada, una instancia de EC2 Classic o una VPC personalizada.

{ "Ref" : "resource name" }
nota

Para obtener información sobre cada tipo de recurso, incluido el valor o los valores devueltos de Ref, consulte Referencia de tipos de recursos de AWS en la Guía del usuario de AWS CloudFormation.

Del ejemplo de enlace del ciclo de vida de Auto Scaling:

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

También puede utilizar Ref para recuperar el valor de un parámetro de AWS CloudFormation definido en otro lugar en el mismo archivo o en un archivo de configuración diferente.

Fn::GetAtt

Use Fn::GetAtt para recuperar el valor de un atributo de un recurso de AWS.

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

Del ejemplo de enlace del ciclo de vida de Auto Scaling:

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

Consulte Fn::GetAtt para obtener más información.

Fn::Join

Utilice Fn::Join para combinar cadenas con un delimitador. Las cadenas pueden ser de codificación fija o se puede usar el resultado de Fn::GetAtt o Ref.

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

Consulte Fn::Join para obtener más información.

Fn::GetOptionSetting

Utilice Fn::GetOptionSetting para recuperar el valor de una opción de configuración aplicada al entorno.

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

Del ejemplo de almacenamiento de claves privadas:

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"