Alon Bar-Lev has uploaded a new change for review.
Change subject: bootstrap: split the logic of ovirt-node upgrade out
......................................................................
bootstrap: split the logic of ovirt-node upgrade out
Currently we have 4 separate bootstrap methods:
1. Host.
2. Node registration.
3. Node installation.
4. Node upgrade.
While there is something common between (1-3), node upgrade is totally
different sequence:
1. Unlike bootstrap it is executing foreign code (not originated at
engine machine.
2. Unlike bootstrap it is non-customizable.
This change split the logic of the node upgrade out, to ease future
VdsInstaller retirement.
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=875528
Change-Id: I22dee8f1238de198abba72f576fb4ee82c513f34
Signed-off-by: Alon Bar-Lev <[email protected]>
---
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsCommand.java
1 file changed, 48 insertions(+), 5 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/9172/1
diff --git
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsCommand.java
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsCommand.java
index 5f2c72a..7e50fd5 100644
---
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsCommand.java
+++
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsCommand.java
@@ -77,6 +77,53 @@
@Override
protected void executeCommand() {
+ if (
+ getVds() != null &&
+ isOvirtReInstallOrUpgrade()
+ ) {
+ try {
+ T parameters = getParameters();
+ _vdsInstaller = new OVirtUpgrader(getVds(),
parameters.getoVirtIsoFile());
+ Backend.getInstance().getResourceManager().RunVdsCommand(
+ VDSCommandType.SetVdsStatus,
+ new SetVdsStatusVDSCommandParameters(
+ getVdsId(),
+ VDSStatus.Installing
+ )
+ );
+ log.infoFormat(
+ "Execute upgrade {0} host {0}, {1}",
+ Thread.currentThread().getName(),
+ getVds().getId(),
+ getVds().getvds_name()
+ );
+ if (!_vdsInstaller.Install()) {
+ throw new Exception("Upgrade failed");
+ }
+ log.infoFormat(
+ "After upgrade {0}, host {0}, {1}: success",
+ Thread.currentThread().getName(),
+ getVds().getId(),
+ getVds().getvds_name()
+ );
+ setSucceeded(true);
+ setHostStatus(VDSStatus.Reboot);
+ RunSleepOnReboot();
+ }
+ catch (Exception e) {
+ log.errorFormat(
+ "Host installation failed for host {0}, {1}.",
+ getVds().getId(),
+ getVds().getvds_name(),
+ e
+ );
+ setSucceeded(false);
+ AddCustomValue("FailedInstallMessage",
getErrorMessage(_vdsInstaller.getErrorMessage()));
+ setHostStatus(VDSStatus.InstallFailed);
+ }
+ return;
+ }
+
if (getVds() != null) {
T parameters = getParameters();
if (getVds().getvds_type() == VDSType.VDS) {
@@ -97,11 +144,7 @@
.getResourceManager()
.RunVdsCommand(VDSCommandType.SetVdsStatus,
new
SetVdsStatusVDSCommandParameters(getVdsId(), VDSStatus.Installing));
- if (isOvirtReInstallOrUpgrade()) {
- _vdsInstaller = new OVirtUpgrader(getVds(),
parameters.getoVirtIsoFile());
- } else {
- _vdsInstaller = new OVirtInstaller(getVds());
- }
+ _vdsInstaller = new OVirtInstaller(getVds());
}
log.infoFormat("Before Installation {0}",
Thread.currentThread().getName());
--
To view, visit http://gerrit.ovirt.org/9172
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I22dee8f1238de198abba72f576fb4ee82c513f34
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alon Bar-Lev <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches