For terraform 0.11.14 will there be impact due to AWS retiring older CloudFront API version

Hi AWS has announced the deprecation and retirement of CloudFront API older than 2016 version.

We are currently using terraform 0.11.14. Would there be any impact to that version of terraform that will require us to upgrade to 0.12.x?

TIA.

Hey @bszutsu, I don’t think it will impact your terraform version. The terraform-provider-aws team is generally always on the latest version of the aws-sdk-go library, which would likely be the location where the deprecation would occur. If you haven’t been impacted yet, I don’t expect this would change anything. The terraform syntax, etc will likely remain unchanged.

If you haven’t yet, I would start locking the version of the provider you’re using. That way, you can continue using the versions you’re already using.

For example:

provider "aws" {
  version = "~> 2.0"
  region  = "us-east-1"
}

Hi @bszutu,

I’m not familiar with the CloudFront details specifically but this sounds like the sort of thing that would be resolved by an AWS provider upgrade rather than a Terraform Core upgrade. At the time I write this, the latest version of the AWS provider remains compatible with Terraform 0.11, and so you can potentially upgrade to the newest version while remaining on Terraform 0.11.14.

However, please do note the versioning scheme of the AWS provider itself: AWS provider v2.0.0 introduced some breaking changes and so if you are on a version prior to that version then you may need to take some special care while upgrading. I don’t know which minimum version of the AWS Provider was first to move away from the 2016 API, but in the latest code in the master branch I can see that the AWS provider has a client for the 2019-03-26 API version at the time I write this. You may be able to look back in the history of that file to see how long ago the client switched away from using the version that is being retired. I can see commits from two years ago that are using a 2017-03-25 version, which suggests that the AWS provider hasn’t been relying on a 2016 API since long before Terraform 0.12 was released.

1 Like