Azure Terraform-无法将虚拟机名称从VM模块输出传递到其他Terraform文件

时间:2020-01-24 14:39:43

标签: terraform terraform-provider-azure

我为Azure虚拟机创建了一个模块,该模块具有计数并输出虚拟机名称,以便在其他terraform模块/文件中使用。

模块:

   resource "azurerm_virtual_machine" "virtual_machine"{
         name = <>
         count = 2
         ......
         ..
   }

output.tf

output "vm_name" {
  value = "${azurerm_virtual_machine.virtual_machine.*.name}"
}

VM.tf

module "testworkstation"
{
    source = "/module/virtual_machine"
    .....
}

当我将vm名称值传递给创建监视警报的其他Terraform时,它将失败。

module "cpu-credits-consumed-win-vm" {
  source                                  = "../modules/monitor_metric_alert" 
  name                                    = "test_${module.testworkstation.vm_name}"

下面是我们得到的错误。

Error: Error refreshing state: 1 error occurred:
        * module.cpu-credits-consumed-win-vm.var.name: At column 1, line 1: output of an HIL expression must be a string, or a single list (argument 2 is TypeList) in:

test_${module.testworkstation.vm_name}

这里有帮助吗?

0 个答案:

没有答案