Nâng từng state một, bắt đầu từ dev/staging.
State format được nâng cấp khi chạy lần đầu bằng version mới, và version cũ có thể không đọc lại được.
bash
cp terraform.tfstate backup-$(git rev-parse --short HEAD).tfstate
tfenv use 1.9.0
terraform init -upgrade
terraform plan # phai ra "No changes" truoc khi qua state tiep theoChuẩn bị: đọc upgrade guide cho breaking change, backup state, và pin version trong required_version để mọi máy và CI dùng đồng nhất sau khi nâng.
hcl
terraform { required_version = "~> 1.9.0" }Điểm về teamwork: sau khi một người chạy version mới trên một state, người khác dùng version cũ sẽ không chạy được nữa. Việc nâng phải được thông báo và làm dứt điểm cho từng state.
Nhịp độ: nâng đều theo từng minor để mỗi lần chỉ tốn ít công. Để tụt lại nhiều major khiến việc nâng cấp thành một dự án riêng.