Files
smom-dbis-138/terraform/modules/vm-deployment/outputs.tf

46 lines
2.0 KiB
Terraform
Raw Normal View History

output "vm_ids" {
value = var.use_scale_set ? azurerm_linux_virtual_machine_scale_set.besu_node[*].id : azurerm_linux_virtual_machine.besu_node[*].id
description = "VM or VMSS IDs"
}
output "vm_private_ips" {
value = var.use_scale_set ? [] : azurerm_network_interface.besu_node[*].private_ip_address
description = "Private IP addresses of VMs"
}
output "vm_public_ips" {
value = var.use_scale_set ? [] : (var.node_type == "sentry" || var.node_type == "rpc" ? azurerm_public_ip.besu_node[*].ip_address : [])
description = "Public IP addresses of VMs (sentry and RPC types only; besu-node uses private IPs only)"
}
output "private_ip_addresses" {
value = var.use_scale_set ? [] : azurerm_network_interface.besu_node[*].private_ip_address
description = "Private IP addresses of VMs (alias for vm_private_ips)"
}
output "public_ip_addresses" {
value = var.use_scale_set ? [] : (var.node_type == "sentry" || var.node_type == "rpc" ? azurerm_public_ip.besu_node[*].ip_address : [])
description = "Public IP addresses of VMs (alias for vm_public_ips - sentry and RPC types only; besu-node uses private IPs only)"
}
output "location" {
value = var.location
description = "Location of the VMs"
}
output "vm_names" {
value = var.use_scale_set ? ["${var.cluster_name}-${var.node_type}-vmss"] : azurerm_linux_virtual_machine.besu_node[*].name
description = "VM or VMSS names"
}
output "vmss_id" {
value = var.use_scale_set ? azurerm_linux_virtual_machine_scale_set.besu_node[0].id : null
description = "VM Scale Set ID (if using scale set)"
}
output "principal_ids" {
value = var.use_scale_set ? (var.vm_enable_managed_identity ? [azurerm_linux_virtual_machine_scale_set.besu_node[0].identity[0].principal_id] : []) : (var.vm_enable_managed_identity ? [for vm in azurerm_linux_virtual_machine.besu_node : vm.identity[0].principal_id] : [])
description = "Managed Identity principal IDs for VMs (for Key Vault access policies)"
}