我将通过 Terraform 管理数十个应用程序的 CDN 配置。我有一组.tf文件保存所有配置中通用的所有默认常量设置,然后每个应用程序都有自己的.tfvars文件来保存其独特的设置。
如果我运行类似的东西,terraform apply --var-file=app1.tfvars --var-file=app2.tfvars --var-file=app3.tfvars那么只使用传入的最后一个文件。
即使这确实有效,当我将其扩展到更多站点时,它也会变得难以管理。
合并.tfvars填充一组通用.tf文件的多个文件的正确方法是什么?
编辑:我应该补充一点,这些.tfvar文件定义了相同的变量但具有不同的值。我需要.tf为每个.tfvar文件声明一次文件中定义的资源的状态。
Chr*_*now 10
这应该使用进程替换来工作:
terraform apply -var-file=<(cat app1.tfvars app2.tfvars app3.tfvars)
Run Code Online (Sandbox Code Playgroud)
我找到了处理这种情况的最佳方法(不使用任何 3rd 方工具)Terraform 工作区并为每个.tfvars文件创建一个单独的工作区。这样我就可以使用相同的公共.tf文件,并terraform workspace select <workspace name>在运行terraform apply --var-file=<filename>每个单独的.tfvars文件之前简单地切换到不同的工作区。
| 归档时间: |
|
| 查看次数: |
4254 次 |
| 最近记录: |