Какова ожидаемая конфигурация для использования рабочих областей terraform с локальным бэкэндом ?
Локальный бэкэнд поддерживает рабочее пространство, но не похоже, что у вас есть большой контроль над , где хранится фактическое состояние.
Когда вы не используете рабочие пространства, вы можете передать параметр path
в локальный бэкэнд, чтобы контролировать, где хранятся файлы состояний.
# 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
Однако, похоже, это не так. Похоже, что локальный бэкэнд игнорирует параметр пути и помещает конфигурацию рабочей области в рабочий каталог.
Я что-то упустил или вы не можете контролировать состояние локальной рабочей области?