Skip to main content

Terraform Version Upgrade (1.5.7 → 1.13.5)

What Changed

AreaAWSAzureGCP
Terraform1.5.7 → 1.13.51.5.7 → 1.13.51.5.7 → 1.13.5
Kubernetes (default value changed)EKS 1.33 → 1.35 (upgrade optional)AKS 1.33.5 → 1.34.2 (upgrade optional)GKE 1.33 → 1.34.3 (upgrade optional)
State lockingDynamoDB → S3 nativeNo changesNo changes
Provider versionsNo changesUpdated, see belowGoogle 6.46.0 → 7.21.0, Random 3.7.2 → 3.8.1
Terraform registry modulesUpdated, see belowNo changesUpdated, see below

How to Upgrade

Switch to Terraform 1.13.5:

tfenv use 1.13.5

Terraform 1.13.5 replaces DynamoDB state locking with S3 native locking (use_lockfile=true). The DynamoDB table is removed after migration.

Terraform registry modules in platform were updated:

ModuleOld versionNew version
terraform-aws-modules/vpc/aws5.14.05.21.0
terraform-aws-modules/alb/aws9.12.09.17.0
terraform-aws-modules/route53/aws4.1.05.0.0
terraform-aws-modules/acm/aws5.1.15.2.0
terraform-aws-modules/key-pair/aws2.0.32.1.1
terraform-aws-modules/eks/aws20.26.020.37.2
terraform-aws-modules/iam/aws5.47.15.60.0
terraform-aws-modules/ecr/aws2.3.02.4.0
EKS upgrade is optional

The default version changed to 1.35, but you can keep the current version by pinning cluster_version in your platform config before applying. If upgrading from 1.33, apply twice — first set 1.34, then 1.35.

Run the deployment script — it automatically handles upgrade:

bash aws-terraform.sh