Сообщение об ошибке при удалении ресурса google_kms_crypto_key - PullRequest
0 голосов
/ 04 мая 2020

Я управляю ключами и кольцами ключей KMS с помощью провайдера gcp terraform

resource "google_kms_key_ring" "vault" {
  name     = "vault"
  location = "global"
}

resource "google_kms_crypto_key" "vault_init" {
  name            = "vault"
  key_ring        = google_kms_key_ring.vault.self_link
  rotation_period = "100000s" #
}

Когда я впервые запустил эту программу, я смог успешно создать ключи и наборы ключей, а terraform destroy позволяет код terraform для успешного выполнения без каких-либо ошибок.

В следующий раз, когда я делаю terraform apply, я просто использую terraform import для импорта ресурсов из GCP, и выполнение кода работает нормально.

Но через некоторое время определенная ключевая версия 1 была уничтожена. Теперь каждый раз, когда я делаю terrafrom destroy, я получаю ошибку ниже

module.cluster_vault.google_kms_crypto_key.vault_init: Destroying... [id=projects/<MY-PROJECT>/locations/global/keyRings/vault/cryptoKeys/vault]

Error: googleapi: Error 400: The request cannot be fulfilled. Resource projects/<MY-PROJECT>/locations/global/keyRings/vault/cryptoKeys/vault/cryptoKeyVersions/1 has value DESTROYED in field crypto_key_version.state., failedPrecondition

Был ли способ подавить эту конкретную ошибку? Ключевые версии 1-3 уничтожены.

enter image description here

1 Ответ

0 голосов
/ 04 мая 2020

В настоящее время ресурсы Cloud KMS не могут быть удалены. Это противоречит желаемому поведению Terraform, позволяющему полностью уничтожать и восстанавливать ресурсы. Чтобы продолжить, вам нужно будет использовать другое имя ключа или кольцо ключей.

...