terraform apply терпит неудачу при создании ресурса, который уже существует - PullRequest
0 голосов
/ 28 марта 2019

Я работаю над 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пропускает его создание и не выдает ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...