我有一个模块,可以从json文件创建一些aws策略。Terraform计划在尝试将新资源(策略(附加到正在创建的角色时返回错误。
The "for_each" value depends on resource attributes that cannot be determined until apply
这是可以的,所以我尝试在创建新资源(策略(的模块上使用dependens_on,但我仍然有同样的错误。
这里是我的模块:
module "admin" {
source = "./my_repo/admin"
depends_on = [
aws_iam_policy.common,
aws_iam_policy.ses_sending,
aws_iam_policy.athena_readonly,
]
policies = [
aws_iam_policy.common.arn,
aws_iam_policy.ses_sending.arn,
aws_iam_policy.athena_readonly.arn,
]
在模块中/my_repo/admin我有一个包含此代码的文件(这里我有错误(
resource "aws_iam_role_policy_attachment" "me" {
for_each = toset(var.policies)
role = aws_iam_role.me.name
policy_arn = each.value
}
怎么了?
谢谢
;for_each";值取决于在应用之前无法确定的资源属性,所以Terraform无法预测将创建多少策略。要解决此问题,请使用-target参数首先仅应用for_each所依赖的资源。