{"adoption": {"forks": 1841, "observed_at": "2026-08-28T04:11:07.231317+00:00", "stars": 14559}, "canonical_url": "https://ross.abutalabs.com/products/terraformer", "card": {"archived": true, "artifact_type": "cli-tool", "description": "CLI tool to generate terraform files from existing infrastructure (reverse Terraform). Infrastructure to Code", "domain": ["infrastructure-as-code", "cloud-computing", "developer-tools"], "enriched": true, "function": ["infrastructure-as-code", "cloud", "developer-tools", "cli"], "health_score": 10, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["GoogleCloudPlatform/terraformer"], "name": "GoogleCloudPlatform/terraformer", "platform": ["windows", "cli", "go"], "pushed_at": "2026-03-16T20:12:11+00:00", "repo": "GoogleCloudPlatform/terraformer", "stars": 14559, "tags": ["terraform", "reverse-terraform", "hcl", "gcp", "aws", "azure", "kubernetes", "deprecated", "archived", "devops", "linux", "macos"], "topics": ["cloud", "terraform", "terraform-configurations", "gcp", "google-cloud", "hcl", "golang", "infrastructure-as-code", "aws", "kubernetes"], "urls": [], "use_cases": ["generate terraform files from existing infrastructure", "import existing cloud resources into terraform state", "reverse engineer terraform configs from gcp project", "convert aws infrastructure to terraform code", "bootstrap terraform for an unmanaged cloud environment", "export kubernetes resources as terraform hcl"], "what_it_is": "Terraformer is a Go CLI tool that generates Terraform configuration (tf/) and tfstate files from existing cloud infrastructure, effectively performing 'reverse Terraform' (infrastructure to code). It supports many providers including GCP, AWS, Azure, Kubernetes, Cloudflare, GitHub, and various monitoring services.", "when_to_avoid": ["you need ongoing support or security patches - the project was archived and deprecated as of March 2026", "you want actively maintained import tooling - consider alternatives like terraform's built-in import blocks or community forks", "you need Cloudflare support - it is documented as broken"], "when_to_choose": ["you need to bring existing infrastructure under Terraform management", "you want to generate baseline HCL/tfstate from a live cloud account", "you need multi-provider import coverage (GCP, AWS, Azure, etc.)"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/terraformer", "repo": "GoogleCloudPlatform/terraformer", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:07.231317+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:12:29.412945+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e8a5daaf18875c2ddec07c3fc5f6e9806462d9281266ce46024c64a38d382f55", "fetched_at": "2026-08-28T04:11:07.231317+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GoogleCloudPlatform/terraformer"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 72, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2681, "days_push": 170, "days_rel": 525, "gap_med": null, "n_releases_24m": 1}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}