configuration_templates
Creates, updates, deletes or gets a configuration_template resource or lists configuration_templates in a region
Overview
| Name | configuration_templates |
| Type | Resource |
| Description | Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate |
| Id | awscc.elasticbeanstalk.configuration_templates |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
application_name | string | The name of the Elastic Beanstalk application to associate with this configuration template. |
description | string | An optional description for this configuration. |
environment_id | string | The ID of an environment whose settings you want to use to create the configuration template. You must specify EnvironmentId if you don't specify PlatformArn, SolutionStackName, or SourceConfiguration. |
option_settings | array | Option values for the Elastic Beanstalk configuration, such as the instance type. If specified, these values override the values obtained from the solution stack or the source configuration template. For a complete list of Elastic Beanstalk configuration options, see Option Values in the AWS Elastic Beanstalk Developer Guide. |
platform_arn | string | The Amazon Resource Name (ARN) of the custom platform. For more information, see Custom Platforms in the AWS Elastic Beanstalk Developer Guide. |
solution_stack_name | string | The name of an Elastic Beanstalk solution stack (platform version) that this configuration uses. For example, 64bit Amazon Linux 2013.09 running Tomcat 7 Java 7. A solution stack specifies the operating system, runtime, and application server for a configuration template. It also determines the set of configuration options as well as the possible and default values. For more information, see Supported Platforms in the AWS Elastic Beanstalk Developer Guide.You must specify SolutionStackName if you don't specify PlatformArn, EnvironmentId, or SourceConfiguration.Use the ListAvailableSolutionStacks API to obtain a list of available solution stacks. |
source_configuration | object | An Elastic Beanstalk configuration template to base this one on. If specified, Elastic Beanstalk uses the configuration values from the specified configuration template to create a new configuration.Values specified in OptionSettings override any values obtained from the SourceConfiguration.You must specify SourceConfiguration if you don't specify PlatformArn, EnvironmentId, or SolutionStackName. Constraint: If both solution stack name and source configuration are specified, the solution stack of the source configuration template must match the specified solution stack name. |
template_name | string | The name of the configuration template |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
application_name | string | The name of the Elastic Beanstalk application to associate with this configuration template. |
template_name | string | The name of the configuration template |
region | string | AWS region. |
For more information, see AWS::ElasticBeanstalk::ConfigurationTemplate.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | configuration_templates | INSERT | ApplicationName, region |
delete_resource | configuration_templates | DELETE | Identifier, region |
update_resource | configuration_templates | UPDATE | Identifier, PatchDocument, region |
list_resources | configuration_templates_list_only | SELECT | region |
get_resource | configuration_templates | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual configuration_template.
SELECT
region,
application_name,
description,
environment_id,
option_settings,
platform_arn,
solution_stack_name,
source_configuration,
template_name
FROM awscc.elasticbeanstalk.configuration_templates
WHERE
region = '{{ region }}' AND
Identifier = '{{ application_name }}|{{ template_name }}';
Lists all configuration_templates in a region.
SELECT
region,
application_name,
template_name
FROM awscc.elasticbeanstalk.configuration_templates_list_only
WHERE
region = '{{ region }}';
INSERT example
Use the following StackQL query and manifest file to create a new configuration_template resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.elasticbeanstalk.configuration_templates (
ApplicationName,
region
)
SELECT
'{{ application_name }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
/*+ create */
INSERT INTO awscc.elasticbeanstalk.configuration_templates (
ApplicationName,
Description,
EnvironmentId,
OptionSettings,
PlatformArn,
SolutionStackName,
SourceConfiguration,
region
)
SELECT
'{{ application_name }}',
'{{ description }}',
'{{ environment_id }}',
'{{ option_settings }}',
'{{ platform_arn }}',
'{{ solution_stack_name }}',
'{{ source_configuration }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: configuration_template
props:
- name: application_name
value: '{{ application_name }}'
- name: description
value: '{{ description }}'
- name: environment_id
value: '{{ environment_id }}'
- name: option_settings
value:
- namespace: '{{ namespace }}'
option_name: '{{ option_name }}'
resource_name: '{{ resource_name }}'
value: '{{ value }}'
- name: platform_arn
value: '{{ platform_arn }}'
- name: solution_stack_name
value: '{{ solution_stack_name }}'
- name: source_configuration
value:
application_name: '{{ application_name }}'
template_name: '{{ template_name }}'
UPDATE example
Use the following StackQL query and manifest file to update a configuration_template resource, using stack-deploy.
/*+ update */
UPDATE awscc.elasticbeanstalk.configuration_templates
SET PatchDocument = string('{{ {
"Description": description,
"OptionSettings": option_settings
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ application_name }}|{{ template_name }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
DELETE example
/*+ delete */
DELETE FROM awscc.elasticbeanstalk.configuration_templates
WHERE
Identifier = '{{ application_name }}|{{ template_name }}' AND
region = '{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
Additional Parameters
Mutable resources in the Cloud Control provider support additional optional parameters which can be supplied with INSERT, UPDATE, or DELETE operations. These include:
| Parameter | Description |
|---|---|
ClientToken | A unique identifier to ensure the idempotency of the resource request.This allows the provider to accurately distinguish between retries and new requests.A client token is valid for 36 hours once used. After that, a resource request with the same client token is treated as a new request. If you do not specify a client token, one is generated for inclusion in the request. |
RoleArn | The ARN of the IAM role used to perform this resource operation.The role specified must have the permissions required for this operation.If you do not specify a role, a temporary session is created using your AWS user credentials. |
TypeVersionId | For private resource types, the type version to use in this resource operation.If you do not specify a resource version, the default version is used. |
Permissions
To operate on the configuration_templates resource, the following permissions are required:
- Create
- Read
- Update
- Delete
- List
elasticbeanstalk:CreateConfigurationTemplate,
s3:CreateBucket,
s3:PutBucketAcl,
s3:PutBucketObjectLockConfiguration,
s3:PutBucketVersioning,
s3:PutBucketOwnershipControls,
s3:PutBucketPolicy,
s3:PutBucketPublicAccessBlock,
s3:PutObject,
s3:ListBucket,
s3:GetObject,
s3:GetBucketLocation,
s3:GetBucketPolicy,
ec2:DescribeImages,
ec2:CreateLaunchTemplate
elasticbeanstalk:DescribeConfigurationSettings,
ec2:CreateLaunchTemplate,
s3:ListBucket,
s3:GetObject,
s3:GetBucketLocation,
s3:GetBucketPolicy
elasticbeanstalk:UpdateConfigurationTemplate,
ec2:CreateLaunchTemplate,
s3:PutObject,
s3:ListBucket,
s3:GetObject,
s3:GetBucketLocation,
s3:GetBucketPolicy,
ec2:DescribeImages
elasticbeanstalk:DeleteConfigurationTemplate,
elasticbeanstalk:DescribeConfigurationSettings,
ec2:CreateLaunchTemplate,
s3:ListBucket,
s3:GetObject,
s3:GetBucketLocation,
s3:GetBucketPolicy,
s3:DeleteObject
elasticbeanstalk:DescribeApplications