Import existing cloud resources into Terraform without recreating them

domain: terraform · 4 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Write the resource block matching the live resource as closely as possible
  2. Use an import block (TF 1.5+): import { to = aws_s3_bucket.x, id = "bucket-name" }
  3. terraform plan — iterate on the config until the plan shows no changes (or only acceptable ones)
  4. Apply, then refactor with moved blocks if needed

Known gotchas

Related routes

Use Terraform import blocks with a generate configuration approach to import existing cloud resources and produce the corresponding resource configuration
developer.hashicorp.com · 5 steps · unrated
Use Terraform removed blocks to drop resources from state without destroying the underlying infrastructure
developer.hashicorp.com/terraform · 5 steps · unrated
Use Terraform moved blocks to refactor a flat root module into child modules without destroying and recreating resources
terraform.io · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans