From 644a9c103530fb547c519efc1993e85e9f2ee4a5 Mon Sep 17 00:00:00 2001 From: Zexi Li Date: Thu, 27 May 2021 19:32:46 +0800 Subject: [PATCH] fix(region): migrate use rescue mode --- pkg/compute/models/guest_actions.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/compute/models/guest_actions.go b/pkg/compute/models/guest_actions.go index e4043c3659..6dcd3fda1f 100644 --- a/pkg/compute/models/guest_actions.go +++ b/pkg/compute/models/guest_actions.go @@ -394,12 +394,12 @@ func (self *SGuest) validateMigrate( if !self.GetDriver().IsSupportMigrate() { return httperrors.NewNotAcceptableError("Not allow for hypervisor %s", self.GetHypervisor()) } + if !migrateInput.IsRescueMode && self.Status != api.VM_READY { + return httperrors.NewServerStatusError("Cannot normal migrate guest in status %s, try rescue mode or server-live-migrate?", self.Status) + } if err := self.GetDriver().CheckMigrate(self, userCred, *migrateInput); err != nil { return err } - if self.Status != api.VM_READY { - return httperrors.NewServerStatusError("Cannot normal migrate guest in status %s, try rescue mode or server-live-migrate?", self.Status) - } if len(migrateInput.PreferHost) > 0 { iHost, _ := HostManager.FetchByIdOrName(userCred, migrateInput.PreferHost) if iHost == nil {