Fastly Terraform Provider 5.0.0
View this release on Github
Breaking changes
There was a long-standing issue with how Terraform reacted to the package.tar.gz
file that the CLI produces. Effectively, hashing the package was inconsistent and caused Terraform to think the code had changed even when it hadn't.
To resolve the issue the Package API now returns a new metadata property (files_hash
) that calculates the hash from a sorted list of the files within the package.
This PR updates the Terraform provider to use this new property instead of the original hashsum
metadata property and exposes a new fastly_package_hash
data source that will generate the appropriate value for the source_code_hash
attribute.
Although the public interface has not changed, the underlying implementation changes have meant customers will no longer be able to use the previous approach of using filesha512
to generate a hash from their package file. So we must consider this PR a breaking change.
This does require a slight change to a customer's process, which prior to this release looked like this..
source_code_hash = filesha512("package.tar.gz")
As of this release, we recommend the use of the fastly_package_hash
data source..
data "fastly_package_hash" "example" { filename = "./path/to/package.tar.gz"}
resource "fastly_service_compute" "example" { # ..
package { filename = "./path/to/package.tar.gz" source_code_hash = data.fastly_package_hash.example.hash }}
- breaking(compute): fix package hash bug #698
Prior change: CLI v10.1.0
Following change: JavaScript SDK 2.0.1