Ravi Nori has uploaded a new change for review. Change subject: engine : ovirt-node enter installing status when the install fails ......................................................................
engine : ovirt-node enter installing status when the install fails When ovirt-node installation fails because of missing iso file the status of the host is left as Installing. This patch adds VdsDynamic data to compensation context if can do action of InstalllVdsCommand fails. The status is reverted back to the previous status in compensation logic. The error messages are added to the return values CanDoActionMessages so the message can be displayed in cli Change-Id: I2d74e946cb68d2b9dbc11fc5c6bed9f63ba35fe2 Bug-Url: https://bugzilla.redhat.com/947982 Signed-off-by: Ravi Nori <rn...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java 1 file changed, 16 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/97/13997/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java index 5773fa8..7d58787 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java @@ -23,6 +23,7 @@ import org.ovirt.engine.core.common.validation.group.UpdateEntity; import org.ovirt.engine.core.common.vdscommands.SetVdsStatusVDSCommandParameters; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; +import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.VdcBllMessages; import org.ovirt.engine.core.dal.dbbroker.DbFacade; import org.ovirt.engine.core.utils.transaction.TransactionMethod; @@ -36,6 +37,10 @@ public UpdateVdsCommand(T parameters) { super(parameters); + } + + protected UpdateVdsCommand(Guid commandId) { + super(commandId); } @Override @@ -139,6 +144,9 @@ if (vdcReturnValueBase != null && !vdcReturnValueBase.getCanDoAction()) { ArrayList<String> canDoActionMessages = vdcReturnValueBase.getCanDoActionMessages(); if (!canDoActionMessages.isEmpty()) { + // add can do action messages to return value so error messages + // are returned back to the client + getReturnValue().getCanDoActionMessages().addAll(canDoActionMessages); log.errorFormat("Installation/upgrade of Host {0},{1} failed due to: {2} ", getVdsId(), getVdsName(), @@ -147,7 +155,15 @@ .TranslateErrorText(canDoActionMessages), ",")); } + // set can do action to false so can do action messages are + // returned back to client + getReturnValue().setCanDoAction(false); setSucceeded(false); + // add old vds dynamic data to compensation context. This + // way the status will revert back to what it was before + // starting installation process + getCompensationContext().snapshotEntityStatus(_oldVds.getDynamicData(), _oldVds.getDynamicData().getstatus()); + getCompensationContext().stateChanged(); return; } } -- To view, visit http://gerrit.ovirt.org/13997 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2d74e946cb68d2b9dbc11fc5c6bed9f63ba35fe2 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: engine_3.2 Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches