Menu
AWS CloudFormation
User Guide (API Version 2010-05-15)

AWS::ElasticBeanstalk::ConfigurationTemplate

Creates a configuration template for an Elastic Beanstalk application. You can use configuration templates to deploy different versions of an application by using the configuration settings that you define in the configuration template.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

Copy
{ "Type" : "AWS::ElasticBeanstalk::ConfigurationTemplate", "Properties" : { "ApplicationName" : String, "Description" : String, "EnvironmentId" : String, "OptionSettings" : [ ConfigurationOptionSetting, ... ], "PlatformArn" : String, "SolutionStackName" : String, "SourceConfiguration" : SourceConfiguration } }

YAML

Copy
Type: "AWS::ElasticBeanstalk::ConfigurationTemplate" Properties: ApplicationName: String Description: String EnvironmentId: String OptionSettings: - ConfigurationOptionSetting PlatformArn: String SolutionStackName: String SourceConfiguration: SourceConfiguration

Properties

For more information, see CreateConfigurationTemplate in the AWS Elastic Beanstalk API Reference.

ApplicationName

Name of the Elastic Beanstalk application that is associated with this configuration template.

Required: Yes

Type: String

Update requires: Replacement

Description

An optional description for this configuration.

Type: String

Required: No

Update requires: Some interruptions

EnvironmentId

An environment whose settings you want to use to create the configuration template. You must specify this property if you don't specify the SolutionStackName or SourceConfiguration properties.

Type: String

Required: Conditional

Update requires: Replacement

OptionSettings

The options for the Elastic Beanstalk configuration, such as the instance type. For a complete list of Elastic Beanstalk configuration options, see Option Values, in the AWS Elastic Beanstalk Developer Guide.

Type: List of Elastic Beanstalk ConfigurationTemplate ConfigurationOptionSetting

Required: No

Update requires: Some interruptions

PlatformArn

The Amazon Resource Name (ARN) of the custom platform. For more information, see Custom Platforms in the AWS Elastic Beanstalk Developer Guide.

Note

If you specify PlatformArn, then don't specify SolutionStackName.

Required: No

Type: String

Update requires: Replacement

SolutionStackName

The name of an Elastic Beanstalk solution stack that this configuration will use. A solution stack specifies the operating system, architecture, and application server for a configuration template, such as 64bit Amazon Linux 2013.09 running Tomcat 7 Java 7. For more information, see Supported Platforms in the AWS Elastic Beanstalk Developer Guide.

You must specify this property if you don't specify the PlatformArn, EnvironmentId, or SourceConfiguration properties.

Type: String

Required: Conditional

Update requires: Replacement

SourceConfiguration

A configuration template that is associated with another Elastic Beanstalk application. If you specify the SolutionStackName property and the SourceConfiguration property, the solution stack in the source configuration template must match the value that you specified for the SolutionStackName property.

You must specify this property if you don't specify the EnvironmentId or SolutionStackName properties.

Type: Elastic Beanstalk ConfigurationTemplate SourceConfiguration

Required: Conditional

Update requires: Replacement

Return Values

Ref

When the logical ID of this resource is provided to the Ref intrinsic function, Ref returns the resource name.

For more information about using the Ref function, see Ref.

Example

This example of an ElasticBeanstalk ConfigurationTemplate is found in the AWS CloudFormation sample template ElasticBeanstalkSample.template, which also provides an example of its use within an AWS::ElasticBeanstalk::Application.

JSON

Copy
"myConfigTemplate" : { "Type" : "AWS::ElasticBeanstalk::ConfigurationTemplate", "Properties" : { "ApplicationName" :{"Ref" : "myApp"}, "Description" : "my sample configuration template", "EnvironmentId" : "", "SourceConfiguration" : { "ApplicationName" : {"Ref" : "mySecondApp"}, "TemplateName" : {"Ref" : "mySourceTemplate"} }, "SolutionStackName" : "64bit Amazon Linux running PHP 5.3", "OptionSettings" : [ { "Namespace" : "aws:autoscaling:launchconfiguration", "OptionName" : "EC2KeyName", "Value" : { "Ref" : "KeyName" } } ] } }

YAML

Copy
myConfigTemplate: Type: "AWS::ElasticBeanstalk::ConfigurationTemplate" Properties: ApplicationName: Ref: "myApp" Description: "my sample configuration template" EnvironmentId: "" SourceConfiguration: ApplicationName: Ref: "mySecondApp" TemplateName: Ref: "mySourceTemplate" SolutionStackName: "64bit Amazon Linux running PHP 5.3" OptionSettings: - Namespace: "aws:autoscaling:launchconfiguration" OptionName: "EC2KeyName" Value: Ref: "KeyName"

See Also