From 21e2f33fb0e6ed9acd23f279b2806d0d9761e609 Mon Sep 17 00:00:00 2001 From: Tomas Srnka Date: Sat, 17 Jan 2015 21:31:37 +0100 Subject: [PATCH] Fix for: [hyperv]: VM import process does not respect Secure Boot option from image #5209 --- plugins/providers/hyperv/scripts/import_vm.ps1 | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/plugins/providers/hyperv/scripts/import_vm.ps1 b/plugins/providers/hyperv/scripts/import_vm.ps1 index 5aea63875..791daecd7 100644 --- a/plugins/providers/hyperv/scripts/import_vm.ps1 +++ b/plugins/providers/hyperv/scripts/import_vm.ps1 @@ -90,6 +90,9 @@ Switch ((Select-Xml -xml $vmconfig -XPath "//boot").node.device0."#text") { "Default" { $bootdevice = "IDE" } } #switch +# Determine secure boot options +$secure_boot_enabled = (Select-Xml -xml $vmconfig -XPath "//secure_boot_enabled").Node."#text" + # Define a hash map of parameter values for New-VM $vm_params = @{ @@ -133,6 +136,13 @@ $vm | Set-VM @more_vm_params -Passthru # Add drives to the virtual machine $controllers = Select-Xml -xml $vmconfig -xpath "//*[starts-with(name(.),'controller')]" +# Set EFI secure boot +if ($secure_boot_enabled -eq "True") { + Set-VMFirmware -VM $vm -EnableSecureBoot On +} else { + Set-VMFirmware -VM $vm -EnableSecureBoot Off +} + # A regular expression pattern to pull the number from controllers [regex]$rx="\d"