You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Terraform为New Relic Workflow配置多个目标

解决方案:用Terraform动态块生成多目标Workflow

你可以通过Terraform的**动态块(dynamic block)**在单个Workflow资源内循环生成多个destination块,完美实现批量添加多个Slack频道作为目标的需求。

修改后的Workflow资源代码

resource "newrelic_workflow" "newrelic_workflow" {
  name                  = "my-workflow"
  muting_rules_handling = "NOTIFY_ALL_ISSUES"

  issues_filter {
    name = "Filter-name"
    type = "FILTER"

    predicate {
      attribute = "accumulations.policyName"
      operator  = "EXACTLY_MATCHES"
      values    = ["policy_name"]
    }
  }

  # 动态生成多个destination块
  dynamic "destination" {
    # 遍历之前用for_each创建的所有通知频道资源
    for_each = newrelic_notification_channel.notification_channel
    content {
      # 取当前遍历到的频道ID
      channel_id = destination.value.id
    }
  }
}

关键说明

  1. 动态块核心逻辑:dynamic "destination" 告诉Terraform要动态生成destination类型的嵌套块
  2. 遍历资源集合:for_each = newrelic_notification_channel.notification_channel 遍历你之前创建的所有Slack通知频道(因为你用了for_each创建这些频道,所以这个资源是一个键值对集合,每个元素对应一个频道)
  3. 引用频道ID:在content块里,通过destination.value.id获取当前频道的ID,自动填充到每个destination块中

这样不管你var.channel_ids里有多少个频道ID,Terraform都会自动生成对应数量的destination块,实现单Workflow多目标的需求。

内容的提问来源于stack exchange,提问作者Dinesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:35:26