简体   繁体   English

来自 terraform 的 for_each 参数不受支持

[英]Unsupported argument for_each from terraform

I'm trying to create a multiple delivery rules for the azure cdn endpoint through terraform. But while trying to achieve the same getting below error,我正在尝试通过 terraform 为 azure cdn 端点创建多个传递规则。但是在尝试实现相同的低于错误时,

Error: Unsupported argument错误:不支持的参数

│ on main.tf line 71, in resource "azurerm_cdn_endpoint" "default": 71: for_each = { │ An argument named "for_each" is not expected here. │ 在 main.tf 的第 71 行,资源“azurerm_cdn_endpoint”中的“默认”:71:for_each = { │ 这里不需要名为“for_each”的参数。

delivery_rule {
    for_each = {
      for deliveryrule in var.delivery_rules : deliveryrule.name => deliveryrule
    }
    name  = each.value.name
    order = each.value.order
    request_scheme_condition {
      operator     = each.value.operator
      match_values = each.value.match_values

    }
    url_redirect_action {
      redirect_type = each.value.redirect_type #"Found"
      protocol      = each.value.protocol #"Https"
    }
  }

You have to use dynamic blocks :你必须使用动态块

dynamic "delivery_rule" {
    for_each = {
      for deliveryrule in var.delivery_rules : deliveryrule.name => deliveryrule   
   }
   
   content {
    name  = delivery_rule.value.name
    order = delivery_rule.value.order
    request_scheme_condition {
      operator     = delivery_rule.value.operator
      match_values = delivery_rule.value.match_values

    }
    url_redirect_action {
      redirect_type = delivery_rule.value.redirect_type #"Found"
      protocol      = delivery_rule.value.protocol #"Https"
    } 
  }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM