Google Cloud Composer с использованием Terraform - PullRequest
0 голосов
/ 06 июня 2018

Я новичок в Terraform, есть ли прямой способ управления и создания среды Google Cloud Composer с помощью Terraform?

Я проверил список поддерживаемых компонентов для GCP, похоже, что Google Cloud Composer не существует на данный момент.В качестве обходного пути я думаю о создании сценария оболочки, включающего необходимые команды gcloud composer cli, и запуске его с использованием Terraform, это правильный подход?Пожалуйста, предложите альтернативы.

Ответы [ 3 ]

0 голосов
/ 01 октября 2018

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

resource "null_resource" "composer" {
  provisioner "local-exec" {
    command = "gcloud composer environments create <name> --project <project> --location us-central1 --zone us-central1-a --machine-type n1-standard-8"
  }
}

Пока это работает, он отключен от фактического состояния ресурса в GCP.Он будет полагаться на файл состояния, чтобы сказать, существует ли он, и я обнаружил, что мне пришлось испортить его, чтобы снова запустить команду.

0 голосов
/ 14 января 2019

Google Cloud Composer теперь поддерживается в Terraform
https://www.terraform.io/docs/providers/google/r/composer_environment.html

Может использоваться как ниже

resource "google_composer_environment" "test" {
  name   = "my-composer-env"
  region = "us-central1"
}
0 голосов
/ 06 июня 2018

Это вариант.Вы можете использовать null_resource и local-exec для запуска команд:

resource "null_resource" "composer" {
  provisioner "local-exec" {
    inline = [
      "gcloud beta composer <etc..>"
    ]
  }
}

Просто имейте в виду, когда используете local-exec:

Обратите внимание, что даже если ресурс будет полностью создан при запуске инициатора, нет гарантии, что он будет в рабочем состоянии

Он выглядит как Google CloudComposer действительно новый и все еще в бета-версии.Надеюсь, Terraform поддержит его в будущем.

...