我使用以下模板配置多个虚拟机:
resource "vsphere_virtual_machine" "vm" {
for_each = var.vms
name = each.value.name
folder = var.vsphere_folder
num_cpus = var.vm_cpus
memory = var.vm_memory
firmware = data.vsphere_virtual_machine.template.firmware
efi_secure_boot_enabled = data.vsphere_virtual_machine.template.efi_secure_boot_enabled
guest_id = data.vsphere_virtual_machine.template.guest_id
scsi_type = data.vsphere_virtual_machine.template.scsi_type
datastore_id = data.vsphere_datastore.datastore.id
resource_pool_id = data.vsphere_resource_pool.pool.id
我想检索这 6 个实例的 uuid,如下所示,但它不起作用:
vsphere_virtual_machine.vm.*.uuid
如何获取 UUID?
如果您想在使用
for_each
元参数时输出给定属性的所有值,可以使用 values
内置函数:
output "vm_uuids" {
value = values(vsphere_virtual_machine.vm)[*].uuid
}