Terraform SNS 订阅多个电子邮件

Rok*_*oka 8 amazon-web-services amazon-sns terraform

aws_sns_topic_subscription Terraform 资源的多个电子邮件地址的格式是什么样的?

resource "aws_sns_topic_subscription" "target" {
  topic_arn = aws_sns_topic.some_sns_topic.arn
  protocol  = "email"
  endpoint  = "aaa@gmail.com,bbb@gmail.com"
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了端点参数的多种组合:

endpoint  = "aaa@gmail.com,bbb@gmail.com"
endpoint  = "aaa@gmail.com", "bbb@gmail.com"
endpoint  = ["aaa@gmail.com", "bbb@gmail.com"]
Run Code Online (Sandbox Code Playgroud)

我在网上或 Terraform 文档中没有找到任何关于如何执行此操作的信息。提前致谢。

Erv*_*gyi 16

endpointprotocol如果是类型,则仅接受一个电子邮件地址email

如果您有多个电子邮件地址,您可能需要for_each为每个地址创建订阅。

resource "aws_sns_topic_subscription" "target" {
  for_each  = toset(["aaa@gmail.com", "bbb@gmail.com"])
  topic_arn = aws_sns_topic.some_sns_topic.arn
  protocol  = "email"
  endpoint  = each.value
}
Run Code Online (Sandbox Code Playgroud)