// the find
dtan4/terraforming
Export existing AWS resources to Terraform style (tf, tfstate) / No longer actively maintained
Terraforming is a Ruby gem that reads your live AWS infrastructure and spits out `.tf` files and `tfstate` JSON so you can bring existing resources under Terraform management. It targets teams that built AWS infrastructure manually and want to stop doing that without starting over. The author explicitly deprecated it in 2021 and points to Terraformer as the replacement.
The resource coverage was genuinely broad for its era — VPC, IAM (users, roles, groups, policies, attachments), RDS, ElastiCache, Route53, KMS, ELB/ALB, DynamoDB, and more, each as a separate subcommand. The ERB template approach per resource type is clean: adding a resource means adding one `.rb` file and one `.erb` file, no sprawling conditionals. The `--merge` flag for merging exported tfstate into an existing state file was the hard part of adoption and it handled it. Test coverage per resource type was thorough — every resource has its own spec file with stubbed AWS responses.
It's dead. Terraform's provider schema has changed substantially since 2021; resources like `aws_s3_bucket` split into multiple resources in provider v4, so generated configs will fail validation against any current provider version. The tfstate format it outputs is v1 (Terraform 0.9 era) — current Terraform uses a completely different state format and will refuse to import it. AWS has released dozens of new resource types since 2021 that this will never support. Use Terraformer instead, as the author says.