Как безопасно перейти с ресурсов google_project_iam_policy на google_project_iam_member? - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть проект TF, который в настоящее время использует один ресурс google_project_iam_policy, и хотел бы перейти на использование google_project_iam_member.

Документация предупреждает:

google_project_iam_policy нельзя использовать совместно с google_project_iam_binding и google_project_iam_member, иначе они будут бороться за то, какой должна быть ваша политика.

Есть ли безопасный путь для перехода от одного стиля к другому?

1 Ответ

0 голосов
/ 16 ноября 2018

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

Я не проверял это, но я думаю, что можно сделать что-то вроде:

  1. Зеркально отразить текущие google_project_iam_policy разрешения в новый набор google_project_iam_binding или google_project_iam_member resources
  2. Запустите terraform apply, чтобы добавить новые ресурсы в ваш файл состояния terraform
  3. Удалите старые google_project_iam_policy ресурсы из вашей конфигурации terraform, но не запускайте terraform apply
  4. Выполнить terraform state rm <resource-name> для каждого из старых google_project_iam_policy ресурсов
  5. Запустите terraform plan и подтвердите, что изменения не запланированы
...