Omer Frenkel has uploaded a new change for review. Change subject: core: update vms on update of instance type ......................................................................
core: update vms on update of instance type when instance type values are updated, we need to update also all the vms that are using this instance type. Change-Id: Ic229a677bdd61a7f522548d9abf68476fbe219e7 Signed-off-by: Omer Frenkel <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmTemplateCommand.java 1 file changed, 19 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/00/31300/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmTemplateCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmTemplateCommand.java index faf16cf..71b1c25 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmTemplateCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVmTemplateCommand.java @@ -16,8 +16,11 @@ import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.UpdateVmTemplateParameters; +import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.action.VmManagementParametersBase; import org.ovirt.engine.core.common.businessentities.ActionGroup; import org.ovirt.engine.core.common.businessentities.DiskImageBase; +import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.businessentities.VmEntityType; import org.ovirt.engine.core.common.businessentities.VmTemplate; import org.ovirt.engine.core.common.businessentities.VmTemplateStatus; @@ -196,9 +199,25 @@ updateWatchdog(getParameters().getVmTemplateData().getId()); updateRngDevice(getParameters().getVmTemplateData().getId()); checkTrustedService(); + updateVmsOfInstanceType(); setSucceeded(true); } + /** + * only in case of InstanceType update, update all vms that are bound to it + */ + private void updateVmsOfInstanceType() { + if (getVmTemplate().getTemplateType() != VmEntityType.INSTANCE_TYPE) { + return; + } + + // get vms from db + List<VM> vmsToUpdate = getVmDAO().getVmsListByInstanceType(getVmTemplateId()); + for (VM vm : vmsToUpdate) { + runInternalAction(VdcActionType.UpdateVm, new VmManagementParametersBase(vm)); + } + } + private void checkTrustedService() { if (getVdsGroup() == null) { return; -- To view, visit http://gerrit.ovirt.org/31300 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic229a677bdd61a7f522548d9abf68476fbe219e7 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Omer Frenkel <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
