AWS 7.0 cookbook released

Hey Everyone,

Today we released a large update to the AWS cookbook with some great new functionality for anyone running systems on AWS. In addition to new resource there’s been significant work under the hood cleaning up the existing code to enable us to more easily add to the cookbook in the future. You should expect to see more releases with new and updated resources over the next few months.

New Resources

  • The route53_record resource from the route53 cookbook has been moved into this cookbook. The resource is now named aws_route53_record, but can be referenced by the old name: route53_record. The resource now accepts all authentication methods supported by this cookbook and a new zone_name property can be used in place of the zone_id property so you now only need to know the name of the zone the record is placed into.
  • Added a new aws_route53_zone resource for adding zones to Route53
  • Added new aws_s3_bucket resource. This is a very simple resource at the moment, but it lays the groundwork for a more complex resource for adding buckets with ACLs and other features

Improvements and Cleanup

  • Converted all resources except for dynamodb_table to custom resources. Logging and converging of resources has been updated and code has been significantly cleaned up
  • Simplified the cookbook libraries by collapsing most of the libraries into the individual resources. For the most part these just added unnecessary complexity to the cookbook
  • Reworked how AWS region information is determined and how the connection to AWS is initialized to work with some the new resources and the existing route53 resources
  • Moved the libraries from the Opscode::Aws namespace to the AwsCookbook namespace.
  • Large scale readme cleanup. There were multiple resources missing and some resources documented in 2 places. The documentation for resources is now ordered alphabetically and contains all actions and properties.
  • Updated elastic_ip resource to reload Ohai after changes so Ohai data reflects the current node state
  • Remove storage of IP information on the node when using the elastic_ip resource. This is a bad practice in general as node data can be changed or deleted by users or chef itself. This is potentially a breaking change for users that relied on this behavior.
  • Updated resource_tag to properly support why-run mode

Us usual we’d love feedback on these changes and in particular we’d love to know what AWS functionality you’d like to see included in future releases.

-Tim