Release: AWS CloudFormation on 2011-05-31
This release of AWS CloudFormation introduces a way to list both current and deleted stacks, template parameter validation, resource deletion policies, and several other template enhancements.
Details
New Features
| Feature |
Description |
| Parameter validation |
You can now provide rules to validate template parameters to allow template authors to provide rules on input parameters that are checked when the user creates a stack. This feature makes it less error-prone to create stacks by catching user input problems before the stack creation is started.
For more information,
see Parameters Declaration, and
Parameter Constraint Snippets. |
| ListStacks |
Using the cfn-list-stacks command line tool or the ListStacks API, you can now list all of your AWS CloudFormation stacks. This includes your existing stacks as well as any deleted stacks. Using the stack ID returned for a given stack, you can view the template or the stack events for any current or deleted stack via cfn-get-template, cfn-describe-stack-resources. Information about deleted stacks is kept for 90 days. To use cfn-list-stacks, you will need to upgrade your command line tools to the latest version.
For more information,
see Getting the command line tools, Listing Your Stacks, cfn-list-stacks, and
AWS CloudFormation Command line tools quick reference. |
| Resource deletion policies |
You can now add deletion policies to the resources in the template. Any resources can have a "Retain" deletion policy. This means that the resource will not be deleted when the stack is deleted and is useful for such resources as Amazon S3 buckets, where the data in the bucket should be preserved when the stack is deleted. Elastic Block Storage volumes and Amazon RDS database instances can have a "Snapshot" deletion policy where AWS CloudFormation takes a snapshot of the contents of the Amazon EBS volume or the DB instance before it deletes the resource.
For more information,
see DeletionPolicy Attribute and Creating an Amazon S3 Bucket for Website Hosting and with a DeletionPolicy Snippet. |
| Mutually referencing security groups |
Using a new template resource type AWS::EC2::SecurityGroupIngress, you can now define multiple security groups in a template that reference each other.
For more information,
see AWS::EC2::SecurityGroupIngress Type, and
Security Group Ingress Resource Snippet. |
| Untargeted Amazon EC2 instance launches with Amazon EBS volumes |
Using a new template resource type AWS::EC2::VolumeAttachment, you can now define EC2 instances that have Amazon EBS volumes attached without targeting a specific Availability Zone.
For more information,
see AWS::EC2::VolumeAttachment Type, and
AWS::EC2::VolumeAttachment Snippet. |
| Fn::GetAtt functions for Amazon S3 buckets |
You can now retrieve the bucket URL or the website URL for an Amazon S3 bucket and use that within the template via Fn::GetAtt.
For more information,
see Fn::GetAtt, and
Creating an Amazon S3 Bucket for Website Hosting and with a DeletionPolicy Snippet. |