Terraform 0.15 released

Check out the announcement blog post here!

Diving into the details, this release builds on the ability to mark input variables as sensitive and extends the behavior in two ways. The first is by making provider-attribute-sensitivity propagate throughout the Terraform plan. This was an experimental feature in 0.14 which has been enabled as a default in 0.15. The second addition to this work is the inclusion of two new functions, sensitive and nonsensitive to help practitioners better control where and how certain values are used/controlled/redacted or exposed.

This release also brings with it the completion of a number of deprecation cycles including tool-specific (third party) provisioners, the map and list functions, the original atlas v1 backend, and more. Please see the changelog and upgrade guide for details.

Additional changes of note:

  • Unified UTF-8 compatible virtual terminal support for a consistent Terraform CLI experience across all platforms and architectures.
  • Module authors can now specify configuration_aliases for provider aliases in a module’s required_providers block in lieu of empty provider blocks.
  • Structured log levels are available for provider developers. TF_LOG=level, TF_LOG_CORE=level and TF_LOG_PROVIDER=level are now available to provider developers building against the latest Terraform SDK. Please note that it will take some time for these features to make their way into the majority of providers in the Terraform ecosystem.

There’s actually a lot more in the release so checkout the changelog for details: https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md

The upgrade guide also includes a number of workflow additions and changes.

Download Terraform 0.15 today!