有没有办法将 Monitoring_role_arn 从 RDS 读入 terraform.tfvars?

Posted

技术标签:

【中文标题】有没有办法将 Monitoring_role_arn 从 RDS 读入 terraform.tfvars?【英文标题】:Is there a way to read the monitoring_role_arn from RDS into terraform.tfvars? 【发布时间】:2022-01-19 20:50:24 【问题描述】:

我可以将这个值直接读入我的 terraform.tfvars 文件,而不是每次都手动更新这个值吗? monitoring_role_arn = "arn:aws:iam::account:role/value"

【问题讨论】:

.tfvars 文件只能包含静态值,因为它是一个变量文件。但是您可以使用data 资源从任何.tf 文件中读取它。您可以使用.tfvars 提供用于过滤data 资源的静态值。 @PraveenPremaratne 有没有可以分享的例子? 如果您发布示例代码,我可以提供量身定制的代码。我已经为 Abhishek 的现有答案添加了一个通用答案。 【参考方案1】:

你可以使用locals

在 *.tf 文件中定义

locals 
  monitoring_role_arn = "arn:aws:iam::account:role/value"  

在变量文件中你可以参考如下

your_var = local.monitoring_role_arn

角色查找选项

也可以使用 IAM 角色查找,通过为目标角色指定的名称。

参考:Data Source: aws_iam_role

按角色名查找资源:

data "aws_iam_role" "monitoring_role_arn" 
  name = "an_example_role_name" // This is the name of the role that appear in the AWS IAM Console

要获取 ARN,请使用以下行:

data.aws_iam_role.monitoring_role_arn.arn

【讨论】:

但是如果monitoring_role_arn是经常变化的东西,我怎么看呢?

以上是关于有没有办法将 Monitoring_role_arn 从 RDS 读入 terraform.tfvars?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法将 QVariant 与 QVector 一起使用?

有没有办法将 QTableView 模型转换为 QStandardItemModel

有没有办法将数字单词转换为整数?

NSManagedObject 有没有办法将创建的子类导入 xcdatamodel 文件

有没有办法使用 VueJs 将列表分成列?

Symfony - 有没有办法将实体设置为全局?