通过 terraform 添加多个 DynamoDB 项目

Vij*_*mar 2 amazon-dynamodb terraform

如何在 dynamoDB 表中添加多个项目?

  table_name = "${var.environment}-kaleidos-dynamodb-MappingConfig"
  hash_key   = "eventType"
  item = <<EOF
   json
EOF
}````

DynamoDB always expects one item. Is there a way to provide multiple items?
Run Code Online (Sandbox Code Playgroud)

sle*_*ita 7

无法使用单个添加多个项目resource "aws_dynamodb_table_item"。您可以resource在同一个文件中包含多个语句,只要为它们指定不同的名称即可,例如:

resource "aws_dynamodb_table_item" "item1" {
  ...
}

resource "aws_dynamodb_table_item" "item2" {
  ...
}
Run Code Online (Sandbox Code Playgroud)

如果您尝试基于数组或映射或特定数字创建项目,您可以使用countor for_eachfor_each在 0.12.6 中引入)

count例子:

resource "aws_dynamodb_table_item" "items" {
  count = 4
  item <<EOF
{
  "pk": {"S": "${count.index}"}
}
EOF
Run Code Online (Sandbox Code Playgroud)

for_each例子:

resource "aws_dynamodb_table_item" "items" {
  for_each = {
    item1 = {
      something = "hello"
    }
    item2 = {
      something = "hello2"
    }
  }
  item = <<EOF
{
  "pk": {"S": "${each.key}"},
  "something": {"S": "${each.value.something}"}
}
EOF
}
Run Code Online (Sandbox Code Playgroud)