terraform apply терпит неудачу при создании ресурса, который уже существует

Я работаю над terraform с openstack в качестве облачного провайдера. У меня есть сценарий deploy.tf, который создает роль:

resource "openstack_identity_role_v3" "role_example" {
  name = "creator"
}

Мой вывод о том, как terraform создает ресурсы:

  • Если роль не существует в openstack, terraform создает ее без проблем.
  • Если роль существует в openstack и создается с помощью того же скрипта terraform, т.е. У terraform.state есть запись, terraform возвращается без ошибок.

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

* openstack_identity_role_v3.role_example: Error creating OpenStack role: Expected HTTP response code [201] when accessing [POST https://<example-openstack-url>/v3/roles], but got 409 instead
{"error": {"message": "Conflict occurred attempting to store role - Duplicate Entry", "code": 409, "title": "Conflict"}}

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

0 ответов

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