terraform-aws-s3-log-storage icon indicating copy to clipboard operation
terraform-aws-s3-log-storage copied to clipboard

Automate upgrade using `moved` blocks

Open Nuru opened this issue 3 years ago • 4 comments
trafficstars

Important Notes

  • Terraform version 1.3.0 and Terraform AWS version 4.9.0 or later are required
  • 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.

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

Nuru avatar Oct 22 '22 22:10 Nuru

/test all

Nuru avatar Oct 22 '22 23:10 Nuru

/test all

Nuru avatar Oct 23 '22 00:10 Nuru

/test all

Nuru avatar Oct 23 '22 00:10 Nuru

/test all

Nuru avatar Oct 23 '22 03:10 Nuru