Terraform Scenario Labs
Fix broken HCL configs, missing variables, and misconfigured backends
How It Works
Each lab drops you into a broken config. Your job: find the bug and fix it.
Read the Scenario
Understand what went wrong — a teammate pushed broken config and CI is failing.
Debug in the Terminal
Run the tool, read the errors, and trace them back to the source.
Fix & Verify
Edit the config, re-run the check, and confirm a clean result.
Beginner
4 labsStart here — core concepts and simple fixes
Fix S3 Backend Configuration
Fix a misconfigured Terraform S3 backend and outdated provider version constraint
Fix Resource Dependencies
Add explicit dependencies to prevent race conditions between an EC2 instance and a CloudWatch alarm
Fix Dynamic Block Syntax
Fix iterator references and add a missing content block in a Terraform dynamic block
Fix Broken EC2 Configuration
Debug and fix syntax errors in a Terraform AWS EC2 instance configuration
Intermediate
3 labsLevel up — multi-resource configs and debugging
Fix IAM Policy Document
Correct action name casing and add a missing Resource field in an IAM policy
Fix Lifecycle Rules
Add prevent_destroy and ignore_changes lifecycle rules to protect a production RDS database
Fix Module Configuration
Pass missing required input variables to a Terraform VPC module
Advanced
3 labsExpert mode — complex configurations and edge cases
Fix Broken Output References
Fix output blocks that reference non-existent resource attributes on an RDS instance
Fix Security Group Rules
Fix an overly permissive SSH rule and add a missing egress rule to an AWS security group
Add Missing Variable Definitions
Resolve undeclared variable errors in a Terraform S3 bucket configuration