您如何在应用程序代码中引用动态 terraform 输出?
Posted
技术标签:
【中文标题】您如何在应用程序代码中引用动态 terraform 输出?【英文标题】:How do you reference a dynamic terraform output in application code? 【发布时间】:2021-06-07 16:06:19 【问题描述】:我正在使用 terraform 创建一个 dynamodb 表,该表的 name 属性看起来像这样......
name = "$var.service-$var.environment-Item-table"
根据环境,名称可能是items-service-dev-Item-table
或items-service-prod-Item-table
。在我的应用程序代码 (JS) 中,我显然需要知道表的名称才能与之交互,但动态特性使它变得更加棘手。
我考虑过沿着 terraform 和应用程序代码引用的环境变量的路线,但它看起来很混乱。处理此类问题的最佳做法是什么?
【问题讨论】:
是的,环境变量就是我要走的路,或者将您需要的东西保存在参数存储中:docs.aws.amazon.com/systems-manager/latest/userguide/… 【参考方案1】:terraform 是否也在部署您的应用程序代码?通常你会让 Terraform 将该值作为环境变量注入它部署的应用程序中。
如果不可能,请将值存储在AWS Parameter Store。
【讨论】:
以上是关于您如何在应用程序代码中引用动态 terraform 输出?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Terraform Grafana 提供程序动态地将仪表板放在正确的文件夹中
在 Terraform 中,如何在包含的模块中引用根模块中创建的组件
如何在 terraform 路由表中引用 AWS 本地前缀列表?