-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AWS provider 4.29.0 has breaking changes / backward incompatibilities! #26666
Comments
Facing the same issue. My workaround for now by using AWS Default VPC resource.
|
It looks like this issue may have been fixed in 4.30.0, as per #23625 (comment)! |
Hey @brikis98 👋 Thank you for taking the time to raise this! We discussed this internally and found that in some cases the way that the AWS API changed to handle the retirement of EC2-Classic is a bit different than what we expected (as @ewbankkit mentioned over on #23625). We've merged a few PRs to update the |
@justinretzolk That's terrific, thank you! I assume this issue is OK to close now? |
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. |
Community Note
Terraform CLI and Terraform AWS Provider Version
Terraform version 1.2.3
AWS provider version 4.29.0
Affected Resource(s)
A whole bunch, including
aws_security_group
,aws_eip
, etc. See #23625 for the list.Terraform Configuration Files
Before 4.29.0, the following code worked just fine:
Expected Behavior
terraform apply
should work on the code above, as it has for years. If it no longer works, then instead of 4.29.0, this breaking change needs to go in to 5.0.0, and be marked with lots of warnings, upgrade guides, etc.Actual Behavior
You get an error:
Steps to Reproduce
terraform apply
Important Factoids
This is due to the EC2 classic upgrade in #23625, but it seems like this breaking change in a "minor" release is not a good way to handle it. This is going to break a lot of Terraform code in the world, with little to no warning. It is already causing issues in sample code in Terraform: Up & Running, blog posts, talks, etc.
As an idea, perhaps version 4 of the provider can automatically use the Default VPC if
vpc_id
isn't specified instead of erroring out? And then in version 5, there can be a deprecation error ifvpc_id
isn't specified... And finally, in 6, it can be an error. But at least this way, you have time to update your code rather than getting errors from a minor version number bump!Actually, thinking about it some more, if the code uses the Default VPC when
vpc_id
isn't specified, perhaps that behavior is "good enough," and there's no need to have any breaking changes at all?References
The text was updated successfully, but these errors were encountered: