【发布时间】:2021-03-27 03:27:01
【问题描述】:
我正在尝试使用 terraform 在 azurerm 中启动一个存储帐户,并将其与密钥名称配对以加密此存储。但是为了商品和未来的改进,我想从 json 文件中设置这个存储帐户的名称。这个想法是用storages name和key_name在json中设置一个数组,并在我的azurerm_resources中循环遍历这些值并设置它们。
我面临的问题是我无法访问 json 文件。我已经配置如下。
tenant.json
{
"inputs": [
{
"tenant-pair": {"tenant-name": "storage-name", "tenant-key": "key-name"}
}
]
}
在我的 main.tf 中,按照一些文档,我设置了一个 locals 如下:
locals {
tenant_data = jsondecode("./tenants.json")
}
但如果我尝试扁平化这些数据:
locals {
tenant_data = jsondecode("./tenants.json")
helper_list = flatten([for v in local.tenant_data.inputs :
[for tenant_name, tenant_key in v.tenant-pair :
{
"tenant_name" = tenant_name
"tenant_key" = tenant_key
}
]
])
}
我在这段代码中遇到的错误是inputs 是一个未解析的引用。
我想知道如何访问我的 json 文件并循环访问它?
非常感谢大家的帮助和指导。
【问题讨论】:
-
你试过
jsondecode(file("tenants.json"))吗?
标签: terraform terraform-provider-azure