ci: require AWS provider v6 in the Terraform tests - #38584
Conversation
The self-managed Terraform modules, which `test/terraform/` sources at `ref=main`, moved to `hashicorp/aws ~> 6.0` in MaterializeInc/materialize-terraform-self-managed#390 (merged 2026-08-25 19:08 UTC). Our own `providers.tf` still pinned `~> 5.0`, leaving the constraint set unsatisfiable, so `terraform init` failed outright: Error: Failed to query available provider packages Could not retrieve the list of available versions for provider hashicorp/aws: no available releases match the given constraints ~> 5.0, >= 5.92.0, >= 6.0.0, ~> 6.0, >= 6.28.0, >= 6.59.0 Bump all three AWS configurations to `~> 6.0`. `aws-persistent` was not in the failing set but sources the same modules at the same floating ref, so it carried the same unsatisfiable constraint. Verified locally per directory: `terraform init` resolves (aws 6.62.0) and `terraform validate` passes for aws-temporary, aws-upgrade and aws-persistent. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Oh, this seems to be the same thing as what I tried to do now in #38695 |
|
I should have looped in the Cloud team once it was obvious that the version bump alone would cut it. Thank you for doing that. Once this is resolved, I will work with them to see if have to do anything special to get mz-context-graph upgraded. |
|
Heads up, not closing since it's your PR, but #38695 has the same bump and its first commit is identical to this one, so only one should land. |
|
Superseded by #38695 |
Motivation
terraform-awsandterraform-aws-upgradehave failed on every nightly since #18164 (2026-08-25), six consecutive builds, plus both v26.40.0 RC nightlies.terraform initcannot resolve a provider:test/terraform/sources the self-managed modules atref=main. Those modules moved tohashicorp/aws ~> 6.0in MaterializeInc/materialize-terraform-self-managed#390 ("DEP-200 aws: upgrade to AWS provider v6 and EKS module v21"), merged 2026-08-25 19:08 UTC. Ourproviders.tfstill pinned~> 5.0, so the constraint set became unsatisfiable and the next nightly, which started 4h50m later, broke.Description
Bump the
hashicorp/awsconstraint to~> 6.0in all three AWS configurations.aws-persistentis not in the failing set, but it sources the same modules at the same floating ref, so it carried the same unsatisfiable constraint and is fixed here too rather than left to surface later.Only the AWS provider needed changing. The other constraints in those files (
kubernetes,helm,random,kubectl) already resolved in the failing run.Verification
Per directory, locally:
terraform init -backend=falseterraform validateaws-temporaryaws-upgradeaws-persistentTips for reviewer
This unblocks
init; it may not be sufficient forapply. Upstream #390 also moved the EKS module to v21, and I have no AWS credentials to run a plan. The variable changes in that PR are purely additive with defaults, so our existing module calls stay valid — but one of the two new variables is worth flagging, because its own description names the failure mode:All three of our configurations call
eks-node-groupwithdepends_on = [module.eks]and none defines a root-levelaws_partitionoraws_caller_identitydata source, so that trap applies to us. I have deliberately left it out of this PR to keep the diff to the one verified failure; if a nightly run hitsInvalid count argument, the follow-up is to add those two data sources and passpartition/account_idto theeks-node-groupcalls.Separately, sourcing these modules at
ref=mainis what let an upstream merge break our nightly with no PR-time signal. Pinning a tag or SHA would trade that for deliberate bumps; not proposed here.🤖 Generated with Claude Code