Gustavo Frederico Temple Pedrosa has uploaded a new change for review. Change subject: core: [Fix] Disabled Balloon in Add Vm ......................................................................
core: [Fix] Disabled Balloon in Add Vm Currently, it is impossible to add a VM with balloon disabled (REST/UI), this change fixes this bug. Change-Id: I7c9526469351a250e2cd8f2261c0dedcfa9c0bad Signed-off-by: Gustavo Pedrosa <gustavo.pedr...@eldorado.org.br> --- 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/AddVmFromSnapshotCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java 4 files changed, 23 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/39/23039/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 41f0011..209f690 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 @@ -616,7 +616,9 @@ getSrcDeviceIdToTargetDeviceIdMapping(), getParameters().isSoundDeviceEnabled(), getParameters().isConsoleEnabled(), - isVirtioScsiEnabled(), false); + isVirtioScsiEnabled(), + isBalloonEnabled(), + false); } protected static boolean isLegalClusterId(Guid clusterId, List<String> reasons) { @@ -950,6 +952,10 @@ FeatureSupported.virtIoScsi(getVdsGroup().getcompatibility_version()); } + protected boolean isBalloonEnabled() { + return getParameters().isBalloonEnabled(); + } + protected boolean isVirtioScsiControllerAttached(Guid vmId) { return VmDeviceUtils.isVirtioScsiControllerAttached(vmId); } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmFromSnapshotCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmFromSnapshotCommand.java index d1aa503..23f2a5c 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmFromSnapshotCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmFromSnapshotCommand.java @@ -270,6 +270,7 @@ getParameters().isSoundDeviceEnabled(), getParameters().isConsoleEnabled(), isVirtioScsiEnabled(), + isBalloonEnabled(), false); } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java index e30c229..54ae26f 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java @@ -216,6 +216,7 @@ getParameters().isSoundDeviceEnabled(), getParameters().isConsoleEnabled(), getParameters().isVirtioScsiEnabled(), + VmDeviceUtils.isBalloonEnabled(getVmId()), false); } else { // sending true for isVm in order to create basic devices needed @@ -229,6 +230,7 @@ getParameters().isSoundDeviceEnabled(), getParameters().isConsoleEnabled(), getParameters().isVirtioScsiEnabled(), + getVm().isBalloonEnabled(), false); } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java index b22032b..cafd81c 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java @@ -268,6 +268,7 @@ boolean soundDeviceEnabled, boolean isConsoleEnabled, Boolean isVirtioScsiEnabled, + boolean isBalloonEnabled, boolean copySnapshotDevices) { Guid id; String isoPath=vmBase.getIsoPath(); @@ -296,7 +297,7 @@ // updating USB slots updateUSBSlots(null, vmBase); // add mem balloon if defined - updateMemoryBalloon(null, vmBase, vm.isBalloonEnabled()); + updateMemoryBalloon(null, vmBase, isBalloonEnabled); } switch(device.getType()) { @@ -438,6 +439,7 @@ boolean soundDeviceEnabled, boolean isConsoleEnabled, Boolean isVirtioScsiEnabled, + boolean isBalloonEnabled, boolean copySnapshotDevices) { VM vm = DbFacade.getInstance().getVmDao().get(dstId); VmBase vmBase = (vm != null) ? vm.getStaticData() : null; @@ -449,7 +451,7 @@ List<VmDevice> devices = dao.getVmDeviceByVmId(srcId); copyVmDevices(srcId, dstId, vm, vmBase, isVm, devices, srcDeviceIdToTargetDeviceIdMapping, - soundDeviceEnabled, isConsoleEnabled, isVirtioScsiEnabled, copySnapshotDevices); + soundDeviceEnabled, isConsoleEnabled, isVirtioScsiEnabled, isBalloonEnabled, copySnapshotDevices); } private static void addVideoDevice(VmBase vm) { @@ -1007,6 +1009,15 @@ return !getVirtioScsiControllers(vmId).isEmpty(); } + public static boolean isBalloonEnabled(Guid vmId) { + return !getBalloonDevices(vmId).isEmpty(); + } + + public static List<VmDevice> getBalloonDevices(Guid vmId) { + return DbFacade.getInstance().getVmDeviceDao() + .getVmDeviceByVmIdAndType(vmId, VmDeviceGeneralType.BALLOON); + } + public static List<VmDevice> getVirtioScsiControllers(Guid vmId) { return getVirtioScsiControllers(vmId, null, false); } -- To view, visit http://gerrit.ovirt.org/23039 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7c9526469351a250e2cd8f2261c0dedcfa9c0bad Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.3 Gerrit-Owner: Gustavo Frederico Temple Pedrosa <gustavo.pedr...@eldorado.org.br> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches