在所有AWS区域部署地形模块



我使用的是最新版本的terraform,我正试图找到一种方法,将事件桥转发器部署到我们AWS帐户中的所有区域。

我想动态地这样做,这样当创建一个新的区域时,我就不需要更新静态提供者列表。

我在一个模块中进行了部署,我一直在尝试在类似于的aws_regions数据部分上循环

data "aws_regions" "this" {}

module "eventbridge"{
for_each = toset([for region in data.aws_regions.this.names : "aws.${region}"])
source = "../../modules/eventbridge"
region = each.value
}

模块中有一个使用区域变量的提供者部分,但模块中的提供者不再被允许,我现在没有主意了!

有人能提出这样做的方法吗?

谢谢!

您试图做的(通过提供程序循环(只是TF不支持。您必须显式列出要使用的每个提供程序的所有模块,或者创建一些外部脚本来预处理TF代码并自动执行。

或者,您可以使用CloudFormation Stack Sets,这是一种跨多个地区和帐户部署AWS资源的简单方法。

相关内容

  • 没有找到相关文章

最新更新