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

如何将两个AWS DMS复制实例的replication_instance_id合并为字符串集合?

合并两个AWS DMS复制实例的replication_instance_id到字符串集合

有两种简洁的方式可以合并这两个资源的实例ID,推荐第二种更直观的写法:

方法1:通过concat组合资源列表后遍历

将两个资源的实例列表先合并,再统一提取ID并转成集合:

locals {
  target_instance_ids = toset(flatten([
    for instance in concat(
      aws_dms_replication_instance.dms_instances_bronze,
      aws_dms_replication_instance.dms_instances_silver
    ) : instance.replication_instance_id
  ]))
}

方法2:使用Splat表达式(更优)

利用Terraform的Splat表达式[*]直接提取每个资源实例的replication_instance_id属性,再通过concat合并两个属性列表,最后转成集合:

locals {
  target_instance_ids = toset(concat(
    aws_dms_replication_instance.dms_instances_bronze[*].replication_instance_id,
    aws_dms_replication_instance.dms_instances_silver[*].replication_instance_id
  ))
}

这种写法无需嵌套循环和flatten,代码更简洁易读,同时toset会自动处理可能存在的重复ID(如果有)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 11:12:39