首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Terraform depends_on aws_iam_policy

Terraform depends_on aws_iam_policy
EN

Stack Overflow用户
提问于 2021-12-07 15:20:39
回答 1查看 371关注 0票数 0

我有一个模块可以从json文件中创建一些aws策略。Terraform计划在尝试将新资源(策略)附加到它正在创建的角色时返回一个错误。

代码语言:javascript
复制
The "for_each" value depends on resource attributes that cannot be determined until apply

这是可以的,所以我尝试在创建新资源(策略)的模块上使用depends_on,但是我仍然有相同的错误。

在这里,我的模块:

代码语言:javascript
复制
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中,我有一个包含以下代码的文件(这里有错误)

代码语言:javascript
复制
resource "aws_iam_role_policy_attachment" "me" {
  for_each   = toset(var.policies)
  role       = aws_iam_role.me.name
  policy_arn = each.value
}

怎么了?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-12-07 15:25:16

"for_each“值依赖于在应用之前无法确定的资源属性,因此Terraform无法预测将创建多少策略。要解决这个问题,首先使用-target参数只应用for_each所依赖的资源。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70262692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档