ofri masad has uploaded a new change for review. Change subject: core: prevent HA VM from being non-migratable ......................................................................
core: prevent HA VM from being non-migratable user could define a VM as being HA and also not automatically-migratable. Changed the canDoAction for AddVM and UpdateVM to prevent this situation Change-Id: I2a7896ddd829fdd89396057114886acae3d65d10 Bug-Url: https://bugzilla.redhat.com/958318 Signed-off-by: Ofri Masad <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmManagementCommandBase.java 3 files changed, 6 insertions(+), 17 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/90/16190/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java index d111978..0b1831e 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java @@ -572,17 +572,7 @@ if (vmStaticData != null) { - returnValue = vmStaticData.getMigrationSupport() != MigrationSupport.PINNED_TO_HOST - || !vmStaticData.isAutoStartup(); - - if (!returnValue) { - reasons.add(VdcBllMessages.ACTION_TYPE_FAILED_VM_CANNOT_BE_HIGHLY_AVAILABLE_AND_PINNED_TO_HOST - .toString()); - } - - if (!returnValue) { - returnValue = returnValue && IsLegalClusterId(vmStaticData.getVdsGroupId(), reasons); - } + returnValue = IsLegalClusterId(vmStaticData.getVdsGroupId(), reasons); if (!validatePinningAndMigration(reasons, vmStaticData, getParameters().getVm().getCpuPinning())) { returnValue = false; diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java index b479d61..d8df569 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmCommand.java @@ -237,12 +237,6 @@ return false; } - if (vmFromParams.isAutoStartup() - && vmFromParams.getMigrationSupport() == MigrationSupport.PINNED_TO_HOST) { - addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_VM_CANNOT_BE_HIGHLY_AVAILABLE_AND_PINNED_TO_HOST); - return false; - } - if (!VmHandler.isMemorySizeLegal(vmFromParams.getOs(), vmFromParams.getMemSizeMb(), getReturnValue().getCanDoActionMessages(), getVdsGroup().getcompatibility_version())) { diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmManagementCommandBase.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmManagementCommandBase.java index 2af6373..3456e7e 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmManagementCommandBase.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmManagementCommandBase.java @@ -189,6 +189,11 @@ reasons.add(VdcBllMessages.ACTION_TYPE_FAILED_VM_CANNOT_BE_PINNED_TO_CPU_AND_MIGRATABLE.toString()); return false; } + + if (vmStaticData.isAutoStartup() && vmStaticData.getMigrationSupport() != MigrationSupport.MIGRATABLE) { + reasons.add(VdcBllMessages.ACTION_TYPE_FAILED_VM_CANNOT_BE_HIGHLY_AVAILABLE_AND_PINNED_TO_HOST.toString()); + return false; + } return true; } -- To view, visit http://gerrit.ovirt.org/16190 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2a7896ddd829fdd89396057114886acae3d65d10 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: ofri masad <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
