我正在使用 Terraformgoogle_project_iam_policy
资源来管理项目的多个角色。
我注意到,它并不总是按照我的预期从角色中删除成员 - 似乎有时(但并非总是)如果我使用云控制台将成员添加到项目的角色,Terraform 不会在我重新申请时将其删除。我希望它根据 Terraform 资源定义从该角色中删除该成员。
我想了解这里发生了什么:terraform 能够区分这些吗?云控制台中是否存在一些gcloud projects get-iam-policy
我看不到的未显示状态?
答案1
当使用 AWS 资源时,我不会期望 Terraform 会出现这种情况,但无法说出在 Google Cloud 上工作时是否存在差异。
您在控制台上创建的角色附件和用户不受 terraform 管理,那么 terraform 为什么要删除它呢?您应该能够与 terraform 一起创建资源,而不会在下次重新应用时销毁它们。如果您对 terraform 管理的资源进行直接修改,它将恢复更改。
但是例如如果您在 terraform 中创建一个安全组和一些规则,然后手动添加另一个规则,terraform 将不会删除该规则,因为它不受 terraform 管理。