Amazon web services terraform-副本的for循环-全局表的区域名称
我正在使用terraform创建aws全局表,其中包含多区域复制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
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"
}
]