I used the following docs to import my old tfstate file: Configuring Terraspace with Existing Statefiles and Systems - Terraspace
My project structure:
.
├── Gemfile
├── Gemfile.lock
├── README.md
├── Terrafile
├── app
│ ├── modules
│ │ ├── rds
│ │ │ ├── kms.tf
│ │ │ ├── outputs.tf
│ │ │ ├── proxy.tf
│ │ │ ├── rds.tf
│ │ │ ├── security_groups.tf
│ │ │ └── variables.tf
│ │ └── vpc
│ │ ├── data.tf
│ │ ├── outputs.tf
│ │ ├── policy.tf
│ │ ├── s3.tf
│ │ ├── variables.tf
│ │ ├── vpc.tf
│ │ └── vpce.tf
│ └── stacks
│ ├── sofia
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ └── variables.tf
│ └── vpc-service
│ ├── main.tf
│ ├── outputs.tf
│ └── variables.tf
└── config
├── app.rb
├── stacks
│ ├── sofia
│ │ └── tfvars
│ │ ├── base.tfvars
│ │ └── us-east-1
│ │ ├── base.tfvars
│ │ └── div-sandbox-dev.tfvars
│ └── vpc-service
│ └── tfvars
│ ├── base.tfvars
│ └── us-east-1
│ ├── base.tfvars
│ └── div-sandbox-dev.tfvars
└── terraform
├── backend.tf
├── global_locals.tf
├── global_vars.tf
├── provider.tf
├── terraform.tf
└── tfvars
├── base.tfvars
└── us-east-1
├── base.tfvars
└── div-sandbox-dev.tfvars
I have the following bucket:
aws s3 ls terraform-state-:ACCOUNT-div-sandbox-dev --recursive
63500 us-east-1/stacks/sofia/terraform.tfstate
135388 us-east-1/stacks/vpc-service/terraform.tfstate # old state with resources
My backend.tf
file:
terraform {
backend "s3" {
bucket = "<%= expansion('terraform-state-:ACCOUNT-:ENV') %>"
key = "<%= expansion(':REGION/:EXTRA/:BUILD_DIR/terraform.tfstate') %>"
region = "<%= expansion(':REGION') %>"
encrypt = true
}
}
Generated:
terraform {
backend "s3" {
bucket = "terraform-state-*HIDEN-div-sandbox-dev"
key = "us-east-1/stacks/vpc-service/terraform.tfstate"
region = "us-east-1"
encrypt = true
}
}
Problem:
AWS_REGION=us-east-1 TS_ENV=div-sandbox-dev terraspace summary --mod=vpc-service
Building .terraspace-cache/us-east-1/div-sandbox-dev/stacks/vpc-service
config/terraform/tfvars/base.tfvars
config/terraform/tfvars/us-east-1/base.tfvars
config/terraform/tfvars/us-east-1/div-sandbox-dev.tfvars
config/stacks/vpc-service/tfvars/base.tfvars
config/stacks/vpc-service/tfvars/us-east-1/base.tfvars
config/stacks/vpc-service/tfvars/us-east-1/div-sandbox-dev.tfvars
Summary of resources based on backend storage statefiles
ERROR: Unable to find the div-sandbox-dev position in the prefix
path used: us-east-1/stacks/vpc-service/terraform.tfstate
How can I solve this?