我有一个如下目录结构来为我的项目构建 Terraform 资源:
s3
main.tf
variables.tf
tag_variables.tf
ec2
main.tf
variables.tf
tag_variables.tf
vpc
main.tf
variables.tf
tag_variables.tf
当我想在 s3 中构建或更改某些内容时,我运行 Terraform 的 s3 目录。当我想构建 ec2 资源时,我 cd 进入该文件夹并在那里进行 Terraform 构建。我一次运行一个。
目前,我在每个目录中都有一个定义为变量的标签列表。这是同一个文件,多次复制到每个目录。
有没有办法避免将相同的标签文件复制到所有文件夹中?我正在寻找一种解决方案,我只有一个标签文件的副本。Terraform 确实提供了一种使用“本地”动词的解决方案,但这仍然需要在每个目录中重复该文件。
我尝试了什么:
- 我尝试将变量放入模块中,但变量是模块内部的,模块并非旨在将代码共享到主文件中。
- 我尝试将变量作为模块的输出,但它也不喜欢那样。
有没有人有办法实现一个在任何地方都可以使用的中央标签文件?我正在考虑诸如包含来自其他地方的源代码块之类的东西?或者任何其他解决方案都会很棒。