Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从azurerm\u资源\u组\u模板\u部署中读取输出内容_Azure_Terraform_Terraform Provider Azure - Fatal编程技术网

如何从azurerm\u资源\u组\u模板\u部署中读取输出内容

如何从azurerm\u资源\u组\u模板\u部署中读取输出内容,azure,terraform,terraform-provider-azure,Azure,Terraform,Terraform Provider Azure,我已经定义了一个azurerm\u资源组\u模板\u部署my\u rm,它具有ARM模板源: { ... "parameters": {... }, "resources": [ ... ], "outputs": { "db_name": { "type": "string", "value": &qu

我已经定义了一个azurerm\u资源组\u模板\u部署my\u rm,它具有ARM模板源:

{
  ...
  "parameters": {...  }, 
  "resources": [ ...  ],
  "outputs": {
    "db_name": {
      "type": "string",
      "value": "test_value"
    } 
  }
}
我希望在terraform中使用此输出,例如:

output "db_name" {
  value = azurerm_resource_group_template_deployment.my_rm.output_content["db_name"]
}
不幸的是,上面的定义返回空值

在terraform中定义输出的正确方法是什么?

导出ARM模板部署输出的JSON内容

在我的验证之后,您可以使用

output "db_name" {
  value = azurerm_resource_group_template_deployment.my_rm.output_content
}
然后运行
terraformapply
,您将看到输出结果,然后您可以更改为使用过滤结果

output "db_name" {
  value = jsondecode(azurerm_resource_group_template_deployment.my_rm.output_content).db_name.value
}
请注意,
db_name
与terraform代码中的声明不同,它确实应该与上面第一步中的输出JSON键相匹配

比如说,