Automation 在terraform中使用工作区时,如何更改本地后端状态的路径?

Automation 在terraform中使用工作区时,如何更改本地后端状态的路径?,automation,terraform,Automation,Terraform,使用terraform与的预期配置是什么 本地后端支持工作空间,但您似乎无法控制实际状态的存储位置 不使用工作区时,可以向本地后端提供路径参数,以控制状态文件的存储位置 # Either in main.tf terraform { backend "local" { path = "/path/to/terraform.tfstate } } # Or as a flag terraform init -backend-config="path=/path/to/terraf

使用terraform与的预期配置是什么

本地后端支持工作空间,但您似乎无法控制实际状态的存储位置

不使用工作区时,可以向本地后端提供
路径
参数,以控制状态文件的存储位置

# Either in main.tf
terraform {
  backend "local" {
    path = "/path/to/terraform.tfstate
  }
}

# Or as a flag
terraform init -backend-config="path=/path/to/terraform.tfstate"
我希望在使用工作区时具有类似的功能,因为您将为
path
提供一个目录,并且工作区将在该目录下创建

例如:

terraform new workspace first
terraform init -backend-config="path=/path/to/terraform.tfstate.d"
terraform apply
terraform new workspace second
terraform init -backend-config="path=/path/to/terraform.tfstate.d"
terraform apply
会导致国家

/path/to/terraform.tfstate.d/first/terraform.tfstate
/path/to/terraform.tfstate.d/second/terraform.tfstate
然而,情况似乎并非如此。看起来本地后端会忽略path参数,并将工作区配置放在工作目录中


我是否缺少某些内容,或者您无法控制本地后端工作区状态?

本地后端
工作区\u dir
有一个未记录的标志,可以解决此问题

跟踪文档任务

terraform {
  backend "local" {
    workspace_dir = "/path/to/terraform.tfstate.d"
  }
}