Как указать серверную часть gcs из другого проекта в terraform - PullRequest
0 голосов
/ 14 апреля 2020

Довольно простой сценарий. У меня есть конфигурация TF, которую я собираюсь использовать для создания проекта B с нуля. Тем не менее, я хочу сохранить состояние этого нового проекта и всех настроек в корзине gcs в проекте A., которые существовали заранее.

terraform {
  backend "gcs" {
    bucket  = "I-want-this-state-in-A"
    prefix  = "terraform/state"
  }
}

Кажется, что когда-то давно бэкэнд-конфигурация для gcs могла включать проект и регион. Кажется, это уже не так.

Кажется, что данные проекта извлекаются из блока провайдера, который выглядит следующим образом:

provider "google" {
  region  = myregion
  project = myproject
}

Теперь это проблема, потому что все мои ресурсы terraform используют эту конфигурацию для создания объектов в B в том числе и сам Б. Однако по какой-то причине провайдер также решает, что хранить там состояние - хорошая идея Но этого ведра пока еще нет в B. Поэтому терраформировать ошибки с 403.

Какие у меня варианты здесь? Я прочитал документы terraform, и из того, что я видел, нет никаких намеков на то, как принудительно указать конкретную c конфигурацию провайдера на моем бэкэнде.

...