Skip to content

v1.0.0

Compare
Choose a tag to compare
@cloudpossebot cloudpossebot released this 23 Oct 15:40
bcb1b1b

Important Notes

  • Terraform version 1.3.0 and Terraform AWS version 4.9.0 or later are required
  • The new bucket_key_enabled flag defaults to false for backward compatibility. At one point we recommend setting it to true for significant savings on KMS usage, but since bucket keys are only reused within a user session, it is not clear if it provides any savings at all. See AWS docs for more information.
  • The new lifecycle_configuration_rules input replaces the now deprecated individual inputs for individual settings of a single lifecycle rule. See the terraform-aws-s3-bucket documentation for details on how to specify lifecycles using lifecycle_configuration_rules. This mechanism is much more flexible and closely follows the Terraform aws_s3_bucket_lifecycle_configuration resource.
  • The new source_policy_documents input replaces the now deprecated policy input to match changes to the aws_iam_policy_document resource
  • You can now select default values for (non-deprecated) inputs by setting them to null
  • With Terraform 1.3 the manual interventions documented for upgrading to this module's versions 0.27.0 and 0.28.0 are no longer needed. You can safely upgrade from any earlier version to this one (although we always recommend leaving force_destroy at its default value of false, and if you have it set to true but want extra safety against the S3 bucket being destroyed, set it to false before upgrading).
  • The force_destroy_enabled flag introduced in v0.27.0 has been removed
  • In version 0.28.0, old lifecycle rule variables were deprecated and the new lifecycle_configuration_rules input was introduced. In that version, you would continue to get the old default lifecycle rule even if you supplied new rules via lifecycle_configuration_rules. Now, the default behavior is to ignore all the deprecated lifecycle inputs when the lifecycle_configuration_rules input is not empty, unless you explicitly set lifecycle_rule_enabled to true.

Enhancements

Automate upgrade using `moved` blocks @Nuru (#81)

what

  • Automate the upgrade process from v0.26.0 or earlier by using moved block functionality introduced in Terraform 1.3.0
  • Add nullable = false for module input variables which have a default value and where null is not a sensible/handled value for the variable.

why

  • Safely upgrade without loss of data or manual intervention
  • Allow users to select default values by setting inputs to null, closes #63