From 056243e99a0a2db51bbf4efd825f600e3771f931 Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Wed, 8 Sep 2021 11:38:36 +0800 Subject: [PATCH] fix(region): change disk and network drivers for Esxi converted VM --- pkg/compute/models/guest_actions.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pkg/compute/models/guest_actions.go b/pkg/compute/models/guest_actions.go index b526c0cf5b..2db10837e8 100644 --- a/pkg/compute/models/guest_actions.go +++ b/pkg/compute/models/guest_actions.go @@ -4395,6 +4395,18 @@ func (self *SGuest) createConvertedServer( createInput := self.ToCreateInput(userCred) createInput.Hypervisor = api.HYPERVISOR_KVM createInput.GenerateName = fmt.Sprintf("%s-%s", self.Name, api.HYPERVISOR_KVM) + // change drivers so as to bootable in KVM + for i := range createInput.Disks { + if createInput.Disks[i].Driver != "ide" { + createInput.Disks[i].Driver = "ide" + } + } + for i := range createInput.Networks { + if createInput.Networks[i].Driver != "e1000" && createInput.Networks[i].Driver != "vmxnet3" { + createInput.Networks[i].Driver = "e1000" + } + } + lockman.LockClass(ctx, GuestManager, userCred.GetProjectId()) defer lockman.ReleaseClass(ctx, GuestManager, userCred.GetProjectId()) newGuest, err := db.DoCreate(GuestManager, ctx, userCred, nil,