terraform CLI не может найти удаленные облачные рабочие пространства при использовании нескольких тегов, пытается их создать

У меня есть рабочее пространство «разработка» — «постановка» и «производство» в облачной организации terraform.

Я пытаюсь взаимодействовать с ними в соответствии с документацией здесь.

В частности это:

Если вы связываете каталог с несколькими рабочими пространствами (используя теги рабочих пространств), вы можете использовать команды рабочего пространства terraform, чтобы выбрать, какое удаленное рабочее пространство использовать.

Локально у меня также созданы точно такие же три рабочих пространства terraform.

Скриншоты:

  • локальные рабочие места:
  • удаленные рабочие пространства и теги:

100% та же организация. Я смог взаимодействовать с рабочими областями, если жестко задал значение рабочей области вместо использования тегов.

Мои определения серверного облака terraform:

      terraform {
  cloud {
    organization = "<<myorgname>>"
    workspaces {
      tags = ["development", "staging", "production"]
    }
  }
}

Когда я запускаю простойterraform initМеня встречают:

      No workspaces found.

  There are no workspaces with the configured tags (development, production, staging)
  in your Terraform Cloud organization. To finish initializing, Terraform needs at
  least one workspace available.

  Terraform can create a properly tagged workspace for you now. Please enter a
  name to create a new Terraform Cloud workspace.

Я просматривал здесь документацию , которая посвящена запуску CLI в этом контексте, но я не могу понять, как это сделать правильно.

Я хочу:

  • управлятьterraform planилиterraform applyнаходясь в локально выбранной рабочей области

а потом:

  • облачное терраформирование для выполнения удаленного запускаdevelopmentРабочее пространство.

Если я просто продолжу и напишу «разработка» в качестве имени, он затем применит все 3 тега в статическом определении к удаленной рабочей области «разработки», тем самым разрушив всю цель использования тегов вместо имени.

Как правильно это сделать?

1 ответ

Это правда, однако есть и эта часть документации [1]:

tags- (Необязательно) Набор тегов рабочей области Terraform Cloud. Вы сможете использовать этот рабочий каталог с любыми рабочими пространствами, имеющими все указанные теги, и можете использовать команды рабочего пространства terraform для переключения между ними или создания новых рабочих пространств. Новые рабочие пространства будут автоматически иметь указанные теги. Этот параметр конфликтует с именем.

РЕДАКТИРОВАТЬ: Как упоминалось в комментариях, для того, чтобы локальные рабочие области можно было использовать и в Terraform Cloud (т.е. чтобы иметь возможность применять код в Terraform Cloud), должен быть «общий» или «основной» тег во всех рабочих пространствах, созданных в Terraform Cloud.


[1] https://www.terraform.io/cli/cloud/settings#arguments

Другие вопросы по тегам