Imports existing cloud infrastructure from AWS, GCP, Azure, and VMware to generate Terraform configuration (HCL) and state files.
TerraCognita is a CLI tool that imports existing cloud infrastructure from providers like AWS, GCP, Azure, and VMware and automatically generates Terraform configuration (HCL) and state files. It solves the problem of manually converting live cloud resources into Infrastructure as Code, enabling teams to quickly adopt Terraform for infrastructure management.
DevOps engineers, platform teams, and cloud administrators who need to migrate existing cloud infrastructure to Terraform for better version control, automation, and compliance.
Developers choose TerraCognita because it automates the tedious process of reverse-engineering cloud infrastructure into Terraform code, supports multiple major cloud providers, and integrates seamlessly into existing Terraform workflows with module generation and state file creation.
Reads from existing public and private cloud providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Directly imports from AWS, GCP, Azure, and VMware vSphere, enabling unified IaC generation across major cloud platforms as stated in the README's provider list.
Automatically creates reusable Terraform modules with organized resource files and configurable variables, reducing manual refactoring effort post-import.
Allows including or excluding specific resources (e.g., aws_instance) via flags, enabling focused code generation for complex infrastructures.
Generates Terraform state files alongside HCL configurations, ensuring imported infrastructure matches existing resources without manual state manipulation.
Tied to specific, potentially outdated Terraform provider versions (e.g., AWS v4.9.0), which may lack support for newer cloud resources or features.
Module generation defaults all attributes to variables, creating clutter for large infrastructures; managing a separate file for variable selection adds complexity.
Designed as a one-time import tool with no built-in synchronization or drift detection, requiring separate processes for infrastructure updates.