Как я могу сгенерировать путь к файлу состояния динамически? - PullRequest
0 голосов
/ 08 января 2020

Похоже, что это невозможно, что разочаровывает, но, возможно, есть функция, которую я пропустил

Я хочу автоматически установить путь к файлу состояния в s3 на основе относительного пути к рабочей области в хранилище

Это легко вычислить: как я могу получить относительный путь текущего директора до произвольного родительского каталога?

Но я не могу использовать функции в конфигурации бэкэнда и Я не могу использовать переменные в конфигурации сервера:

Это не разрешено

terraform {
  backend "s3" {
    bucket = "mybucket"
    region = "us-west-2"
    key = replace(
      abspath(path.root),
      "/.+?(topworkspace.*)/",
      "$1"
    )
  }
}
Functions may not be called here.

Это запрещено

terraform {
  backend "s3" {
    bucket = "mybucket"
    region = "us-west-2"
    key = local.mypath
  }
}

locals {
  mypath = replace(
    abspath(path.root),
    "/.+?(topworkspace.*)/",
    "$1"
  )
}
Variables may not be used here.

Я также не хочу использовать переменную среды или что-либо еще внешний по отношению к самому конфигу.

...