logo
Expand description

AWS CloudFormation

AWS CloudFormation allows you to create and manage AWS infrastructure deployments predictably and repeatedly. You can use AWS CloudFormation to leverage AWS products, such as Amazon Elastic Compute Cloud, Amazon Elastic Block Store, Amazon Simple Notification Service, Elastic Load Balancing, and Auto Scaling to build highly-reliable, highly scalable, cost-effective applications without creating or configuring the underlying AWS infrastructure.

With AWS CloudFormation, you declare all of your resources and dependencies in a template file. The template defines a collection of resources as a single unit called a stack. AWS CloudFormation creates and deletes all member resources of the stack together and manages all dependencies between the resources for you.

For more information about AWS CloudFormation, see the AWS CloudFormation Product Page.

Amazon CloudFormation makes use of other AWS products. If you need additional technical information about a specific AWS product, you can find the product's technical documentation at docs.aws.amazon.com.

If you’re using the service, you’re probably looking for CloudFormationClient and CloudFormation.

Structs

Structure that contains the results of the account gate function which AWS CloudFormation invokes, if present, before proceeding with a stack set operation in an account and Region.

For each account and Region, AWS CloudFormation lets you specify a Lamdba function that encapsulates any requirements that must be met before CloudFormation can proceed with a stack set operation in that account and Region. CloudFormation invokes the function each time a stack set operation is requested for that account and Region; if the function returns FAILED, CloudFormation cancels the operation in that account and Region, and sets the stack set operation result status for that account and Region to FAILED.

For more information, see Configuring a target account gate.

The AccountLimit data type.

CloudFormation has the following limits per account:

  • Number of concurrent resources

  • Number of stacks

  • Number of stack outputs

For more information about these account limits, and other CloudFormation limits, see AWS CloudFormation Limits in the AWS CloudFormation User Guide.

[Service-managed permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).

The input for the CancelUpdateStack action.

The Change structure describes the changes AWS CloudFormation will perform if you execute the change set.

The ChangeSetSummary structure describes a change set, its status, and the stack with which it's associated.

Detailed information concerning an error generated during the setting of configuration data for a CloudFormation extension.

A client for the AWS CloudFormation API.

The input for the CreateChangeSet action.

The output for the CreateChangeSet action.

The input for CreateStack action.

The output for a CreateStack action.

The input for the DeleteChangeSet action.

The output for the DeleteChangeSet action.

The input for DeleteStack action.

[Service-managed permissions] The AWS Organizations accounts to which StackSets deploys. StackSets does not deploy stack instances to the organization management account, even if the organization management account is in your organization or in an OU in your organization.

For update operations, you can specify either Accounts or OrganizationalUnitIds. For create and delete operations, specify OrganizationalUnitIds.

The input for the DescribeChangeSet action.

The output for the DescribeChangeSet action.

The input for DescribeStacks action.

The output for a DescribeStacks action.

The input for the ExecuteChangeSet action.

The output for the ExecuteChangeSet action.

The Export structure describes the exported output values for a stack.

The input for the GetStackPolicy action.

The output for the GetStackPolicy action.

The input for a GetTemplate action.

The output for GetTemplate action.

The input for the ListChangeSets action.

The output for the ListChangeSets action.

The input for ListStacks action.

The output for ListStacks action.

Contains logging configuration information for an extension.

Contains information about the module from which the resource was created, if the resource was created from a module included in the stack template.

For more information on modules, see Using modules to encapsulate and reuse resource configurations in the CloudFormation User Guide.

The Output data type.

The Parameter data type.

A set of criteria that AWS CloudFormation uses to validate parameter values. Although other constraints might be defined in the stack template, AWS CloudFormation returns only the AllowedValues property.

The ParameterDeclaration data type.

Context information that enables AWS CloudFormation to uniquely identify a resource. AWS CloudFormation uses context key-value pairs in cases where a resource's logical and physical IDs are not enough to uniquely identify that resource. Each context key-value pair specifies a resource that contains the targeted resource.

Information about a resource property whose actual value differs from its expected value, as defined in the stack template and any values specified as template parameters. These will be present only for resources whose StackResourceDriftStatus is MODIFIED. For more information, see Detecting Unregulated Configuration Changes to Stacks and Resources.

For extensions that are modules, a public third-party extension that must be activated in your account in order for the module itself to be activated.

For more information, see Activating public modules for use in your account in the AWS CloudFormation User Guide.

The ResourceChange structure describes the resource and the action that AWS CloudFormation will perform on it if you execute this change set.

For a resource with Modify as the action, the ResourceChange structure describes the changes AWS CloudFormation will make to that resource.

Describes the target resources of a specific type in your import template (for example, all AWS::S3::Bucket resources) and the properties you can provide during the import to identify resources of that type.

The field that AWS CloudFormation will change, such as the name of a resource's property, and whether the resource will be recreated.

Describes the target resource of an import operation.

Structure containing the rollback triggers for AWS CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

Rollback triggers enable you to have AWS CloudFormation monitor the state of your application during stack creation and updating, and to roll back that operation if the application breaches the threshold of any of the alarms you've specified. For more information, see Monitor and Roll Back Stack Operations.

A rollback trigger AWS CloudFormation monitors during creation and updating of stacks. If any of the alarms you specify goes to ALARM state during the stack operation or within the specified monitoring period afterwards, CloudFormation rolls back the entire stack operation.

The input for the SetStackPolicy action.

The input for the SignalResource action.

The Stack data type.

Contains information about whether the stack's actual configuration differs, or has drifted, from its expected configuration, as defined in the stack template and any values specified as template parameters. A stack is considered to have drifted if one or more of its resources have drifted.

Contains information about whether the stack's actual configuration differs, or has drifted, from its expected configuration, as defined in the stack template and any values specified as template parameters. A stack is considered to have drifted if one or more of its resources have drifted.

The StackEvent data type.

An AWS CloudFormation stack, in a specific account and Region, that's part of a stack set operation. A stack instance is a reference to an attempted or actual stack in a given account within a given Region. A stack instance can exist without a stack—for example, if the stack couldn't be created for some reason. A stack instance is associated with only one stack set. Each stack instance contains the ID of its associated stack set, as well as the ID of the actual stack and the stack status.

The detailed status of the stack instance.

The status that stack instances are filtered by.

The structure that contains summary information about a stack instance.

The StackResource data type.

Contains detailed information about the specified stack resource.

Contains the drift information for a resource that has been checked for drift. This includes actual and expected property values for resources in which AWS CloudFormation has detected drift. Only resource properties explicitly defined in the stack template are checked for drift. For more information, see Detecting Unregulated Configuration Changes to Stacks and Resources.

Resources that do not currently support drift detection cannot be checked. For a list of resources that support drift detection, see Resources that Support Drift Detection.

Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to detect drift on all resources in a given stack that support drift detection.

Contains information about whether the resource's actual configuration differs, or has drifted, from its expected configuration.

Summarizes information about whether the resource's actual configuration differs, or has drifted, from its expected configuration.

Contains high-level information about the specified stack resource.

A structure that contains information about a stack set. A stack set enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template. In the stack set, you specify the template to use, as well as any parameters and capabilities that the template requires.

Detailed information about the drift status of the stack set.

For stack sets, contains information about the last completed drift operation performed on the stack set. Information about drift operations in-progress is not included.

For stack set operations, includes information about drift operations currently being performed on the stack set.

For more information, see Detecting Unmanaged Changes in Stack Sets in the AWS CloudFormation User Guide.

The structure that contains information about a stack set operation.

The user-specified preferences for how AWS CloudFormation performs a stack set operation.

For more information on maximum concurrent accounts and failure tolerance, see Stack set operation options.

The structure that contains information about a specified operation's results for a given account in a given Region.

The structures that contain summary information about the specified operation.

The structures that contain summary information about the specified stack set.

The StackSummary Data Type

The Tag type enables you to specify a key-value pair that can be used to store information about an AWS CloudFormation stack.

The TemplateParameter data type.

Detailed information concerning the specification of a CloudFormation extension in a given account and region.

For more information, see Configuring extensions at the account level in the CloudFormation User Guide.

Identifying information for the configuration of a CloudFormation extension.

Filter criteria to use in determining which extensions to return.

Contains summary information about the specified CloudFormation extension.

Contains summary information about a specific version of a CloudFormation extension.

The input for an UpdateStack action.

The output for an UpdateStack action.

Enums

Errors returned by ActivateType

Errors returned by BatchDescribeTypeConfigurations

Errors returned by CancelUpdateStack

Errors returned by ContinueUpdateRollback

Errors returned by CreateChangeSet

Errors returned by CreateStack

Errors returned by CreateStackInstances

Errors returned by CreateStackSet

Errors returned by DeactivateType

Errors returned by DeleteChangeSet

Errors returned by DeleteStack

Errors returned by DeleteStackInstances

Errors returned by DeleteStackSet

Errors returned by DeregisterType

Errors returned by DescribeAccountLimits

Errors returned by DescribeChangeSet

Errors returned by DescribePublisher

Errors returned by DescribeStackDriftDetectionStatus

Errors returned by DescribeStackEvents

Errors returned by DescribeStackInstance

Errors returned by DescribeStackResourceDrifts

Errors returned by DescribeStackResource

Errors returned by DescribeStackResources

Errors returned by DescribeStackSet

Errors returned by DescribeStackSetOperation

Errors returned by DescribeStacks

Errors returned by DescribeType

Errors returned by DescribeTypeRegistration

Errors returned by DetectStackDrift

Errors returned by DetectStackResourceDrift

Errors returned by DetectStackSetDrift

Errors returned by EstimateTemplateCost

Errors returned by ExecuteChangeSet

Errors returned by GetStackPolicy

Errors returned by GetTemplate

Errors returned by GetTemplateSummary

Errors returned by ListChangeSets

Errors returned by ListExports

Errors returned by ListImports

Errors returned by ListStackInstances

Errors returned by ListStackResources

Errors returned by ListStackSetOperationResults

Errors returned by ListStackSetOperations

Errors returned by ListStackSets

Errors returned by ListStacks

Errors returned by ListTypeRegistrations

Errors returned by ListTypeVersions

Errors returned by ListTypes

Errors returned by PublishType

Errors returned by RecordHandlerProgress

Errors returned by RegisterPublisher

Errors returned by RegisterType

Errors returned by SetStackPolicy

Errors returned by SetTypeConfiguration

Errors returned by SetTypeDefaultVersion

Errors returned by SignalResource

Errors returned by StopStackSetOperation

Errors returned by TestType

Errors returned by UpdateStack

Errors returned by UpdateStackInstances

Errors returned by UpdateStackSet

Errors returned by UpdateTerminationProtection

Errors returned by ValidateTemplate

Traits

Trait representing the capabilities of the AWS CloudFormation API. AWS CloudFormation clients implement this trait.