I’m playing catch-up today in order to make sure that you know about some AWS CloudFormation releases that have gone out over the last couple of weeks.? You can now create custom CloudFormation resources by calling AWS Lambda functions. We added support for some additional Auto Scaling and RDS resources. We also updated our support for some existing CloudFront, ElastiCache, EC2, OpsWorks, RDS, and Route 53 resources.
Lambda-Backed Custom Resources
You can now write AWS Lambda functions that are invoked whenever you create, update, or delete a CloudFormation stack. This allows you to write functions that provide access to values generated in other stacks, look up AMI IDs during stack creation, access existing AWS resources, and perform utility functions such as string reversal.
The functions that you write are invoked synchronously and communicate with CloudFormation by writing results to a designated S3 object in JSON form. To learn more about how to use this powerful new addition to CloudFormation, take a look at the new documentation on AWS Lambda-backed Custom Resources.
With this release, Lambda is now the extensibility and customization mechanism for CloudFormation. I am really interested in seeing how you put this to use in your own applications and system designs; please let me know ([email protected]) what you come up with!
Updated Resource Support
CloudFormation now supports the following additional resources:
- Auto Scaling – LifecycleHook
- RDS – EventSubscription
CloudFormation now includes enhanced support for the following resources:
- Auto Scaling – AutoScalingGroup, LaunchConfiguration, ScalingPolicy
- CloudFront – Distribution
- ElastiCache – CacheCluster
- EC2 – Volume
- OpsWorks – Instance, Layer
- RDS – DBInstance
- Route 53 – HealthCheck, HostedZone
For more information on these updates, take a look at the CloudFormation Release Notes.