diff --git a/app/models/concerns/foreman_bootdisk/compute_resources/proxmox.rb b/app/models/concerns/foreman_bootdisk/compute_resources/proxmox.rb index c694c6f..59033c6 100644 --- a/app/models/concerns/foreman_bootdisk/compute_resources/proxmox.rb +++ b/app/models/concerns/foreman_bootdisk/compute_resources/proxmox.rb @@ -27,7 +27,6 @@ def iso_attach(iso, vm_uuid) disks = server.disks.map { |disk| disk.split(":")[0] }.join(";") server.update({ ide2: "#{volume.volid},media=cdrom" }) server.update({ boot: "order=ide2;#{disks}" }) - server.reboot end def iso_detach(vm_uuid) diff --git a/app/models/concerns/foreman_bootdisk/compute_resources/vmware.rb b/app/models/concerns/foreman_bootdisk/compute_resources/vmware.rb index c9e4b1d..7563d69 100644 --- a/app/models/concerns/foreman_bootdisk/compute_resources/vmware.rb +++ b/app/models/concerns/foreman_bootdisk/compute_resources/vmware.rb @@ -42,11 +42,7 @@ def iso_attach(iso, vm_uuid) 'allow_guest_control' => true, 'controller_key' => controller[:key] } - vm = find_vm_by_uuid(vm_uuid) - vm.stop if vm.ready? - vm.reload client.vm_reconfig_cdrom options - vm.start if !vm.ready? end def iso_detach(vm_uuid) diff --git a/app/models/concerns/foreman_bootdisk/host_ext.rb b/app/models/concerns/foreman_bootdisk/host_ext.rb index 5a9f600..0788452 100644 --- a/app/models/concerns/foreman_bootdisk/host_ext.rb +++ b/app/models/concerns/foreman_bootdisk/host_ext.rb @@ -31,6 +31,10 @@ def bootdisk_downloadable? architecture.blank? || intel_arch? end + def bootdisk_rebuild_requires_poweroff + true + end + def intel_arch? /i.86|x86[_-]64/ =~ architecture.name end diff --git a/test/unit/concerns/compute_resources/vmware_test.rb b/test/unit/concerns/compute_resources/vmware_test.rb index a6ca059..412189e 100644 --- a/test/unit/concerns/compute_resources/vmware_test.rb +++ b/test/unit/concerns/compute_resources/vmware_test.rb @@ -62,7 +62,7 @@ class VmwareTest < ActiveSupport::TestCase attrs_out = { cpus: '1', provision_method: 'bootdisk', - firmware: 'bios', + firmware: 'automatic', cdroms: [mock_cdrom], boot_order: %w[cdrom disk], boot_retry: 10000