Terraform null argument silently disabled RDS deletion protection in shared QA
An engineer running terraform destroy in what was believed to be a personal sandbox instead removed the shared QA environment, including its database. The platform's database module enforces deletion protection, but a wrapper module passed null for that setting, which Terraform treated as an explicit value rather than falling back to the module default. The AWS provider then applied its own default of false, so every database created through the wrapper lacked protection. An AWS Config check later found 14 of 22 instances unprotected, and QA was restored from a nightly snapshot copy. The platform team fixed the issue by marking module variables as non-nullable, removing wrapper defaults, and adding a precondition that requires protection to be enabled.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in