From 073a2cbc1f3c23b8249c468d48e89cda9fa2d875 Mon Sep 17 00:00:00 2001 From: "Donaldson, Ben" Date: Mon, 18 Nov 2024 14:36:27 -0800 Subject: [PATCH] fix: Clearer error messaging when VM generation detection goes wrong --- builder/hyperv/common/powershell/hyperv/hyperv.go | 4 ++++ builder/hyperv/common/powershell/powershell.go | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/builder/hyperv/common/powershell/hyperv/hyperv.go b/builder/hyperv/common/powershell/hyperv/hyperv.go index d95fe0d6..2a7914b9 100644 --- a/builder/hyperv/common/powershell/hyperv/hyperv.go +++ b/builder/hyperv/common/powershell/hyperv/hyperv.go @@ -633,6 +633,10 @@ param([string]$vmName) $generation = Hyper-V\Get-Vm -Name $vmName | %{$_.Generation} if (!$generation){ $generation = 1 +} elseif ($generation.toString() -notmatch "\d"){ + throw "Unable to parse VM generation. Are there multiple VMs with the name $vmName?" +} else { + return $generation } return $generation ` diff --git a/builder/hyperv/common/powershell/powershell.go b/builder/hyperv/common/powershell/powershell.go index 22fb2bf1..28ce1194 100644 --- a/builder/hyperv/common/powershell/powershell.go +++ b/builder/hyperv/common/powershell/powershell.go @@ -347,6 +347,10 @@ param([string]$vmName) $generation = Hyper-V\Get-Vm -Name $vmName | %{$_.Generation} if (!$generation){ $generation = 1 +} elseif ($generation.toString() -notmatch "\d"){ + throw "Unable to parse VM generation. Are there multiple VMs with the name $vmName?" +} else { + return $generation } return $generation `