Amazon web services terraform-副本的for循环-全局表的区域名称

Amazon web services terraform-副本的for循环-全局表的区域名称,amazon-web-services,amazon-dynamodb,terraform,terraform-provider-aws,Amazon Web Services,Amazon Dynamodb,Terraform,Terraform Provider Aws,我正在使用terraform创建aws全局表,其中包含多区域复制 resource "aws_dynamodb_global_table" "test_table" { depends_on = ["aws_dynamodb_table.us-east-1", "aws_dynamodb_table.us-west-2"] provider = "aws.us-east-1" name = "test" replica { region_name = "u

我正在使用terraform创建aws全局表,其中包含多区域复制

    resource "aws_dynamodb_global_table" "test_table" {
  depends_on = ["aws_dynamodb_table.us-east-1", "aws_dynamodb_table.us-west-2"]
  provider   = "aws.us-east-1"

  name = "test"

  replica {
    region_name = "us-east-1"
  }

  replica {
    region_name = "us-west-2"
  }
}
接下来,我将创建两个区域表作为模块,使用计数插值并为每个表返回ARN

如何创建全局表作为模块,在其中向两个表添加引用?在这种情况下,依赖于和复制

使用尝试过的方法更新:

//Templ1 
{ region_name = "${region_name}" }

//Templ2
  ${value} 

data "template_file" "replica_region" {
  template = "${file("${path.module}/replica-region.json.tmpl")}" 
  count = "${length(var.regions)}"
  vars {
    region_name = "${element(var.regions, count.index)}"
  }
}

data "template_file" "replica_regional" {
  template = "${file("${path.module}/replica-regional.json.tmpl")}" 
  vars {
    value = "${join(",", data.template_file.replica_region.*.rendered)}"
  }
}
我正在传递到下面的全局表

replica = [ "${data.template_file.replica_regional.rendered}" ] 
但是获取错误replica.0.region\u name:未设置必需字段,因为当我为${data.template\u file.replica\u regional.rendered}进行输出时,我在输出下方获取

 { region_name = "us-east-1" },{ region_name = "us-west-2" }

如果我硬编码上面的地形配方就行了。我错过了什么?我指的是这篇文章

我在variables.tf中将它设置为一个变量,并直接在全局数据库资源中使用它

    replica = [
        {
            region_name = "us-east-1"
        },
        {
            region_name = "us-west-1"
        }
    ]