Martin Betak has uploaded a new change for review. Change subject: backend: Add RebootVmCommand ......................................................................
backend: Add RebootVmCommand Added RebootVmCommand and corresponding RebootVmVDSCommand that utilizes the new boolean parameter of VDSM shutdown verb. Note: Currently, the VDSM will only attempt to perform reboot using guest-agent. Change-Id: I0693943c01e204da877268c02957f3b936cf3fa2 Signed-off-by: Martin Betak <[email protected]> --- A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RebootVmCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java M backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java A backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/RebootVmVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java A packaging/dbscripts/upgrade/03_04_0320_add_reboot_command.sql M packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql 15 files changed, 110 insertions(+), 16 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/44/22744/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RebootVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RebootVmCommand.java new file mode 100644 index 0000000..667afd6 --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RebootVmCommand.java @@ -0,0 +1,33 @@ +package org.ovirt.engine.core.bll; + +import org.ovirt.engine.core.common.action.VmOperationParameterBase; +import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.common.vdscommands.VDSCommandType; +import org.ovirt.engine.core.common.vdscommands.VDSReturnValue; +import org.ovirt.engine.core.common.vdscommands.VdsAndVmIDVDSParametersBase; +import org.ovirt.engine.core.utils.log.Log; +import org.ovirt.engine.core.utils.log.LogFactory; + +@NonTransactiveCommandAttribute(forceCompensation = true) +public class RebootVmCommand<T extends VmOperationParameterBase> extends VmOperationCommandBase<T> { + private static final Log log = LogFactory.getLog(RebootVmCommand.class); + + public RebootVmCommand(T parameters) { + super(parameters); + } + + @Override + protected void setActionMessageParameters() { + super.setActionMessageParameters(); + addCanDoActionMessage(VdcBllMessages.VAR__ACTION__RESTART); + addCanDoActionMessage(VdcBllMessages.VAR__TYPE__VM); + } + + @Override + protected void perform() { + log.infoFormat("Sending reboot command for VM {0}.", getVm().getName()); + final VDSReturnValue returnValue = runVdsCommand(VDSCommandType.RebootVm, new VdsAndVmIDVDSParametersBase(getVdsId(), getVmId())); + setActionReturnValue(returnValue.getReturnValue()); + setSucceeded(returnValue.getSucceeded()); + } +} diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java index ec7a2b7..55b5a04 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java @@ -114,6 +114,7 @@ COMMANDS_ALLOWED_ON_EXTERNAL_VMS.add(VdcActionType.StopVm); COMMANDS_ALLOWED_ON_EXTERNAL_VMS.add(VdcActionType.ShutdownVm); COMMANDS_ALLOWED_ON_EXTERNAL_VMS.add(VdcActionType.RemoveVm); + COMMANDS_ALLOWED_ON_EXTERNAL_VMS.add(VdcActionType.RebootVm); COMMANDS_ALLOWED_ON_HOSTED_ENGINE.add(VdcActionType.MigrateVm); COMMANDS_ALLOWED_ON_HOSTED_ENGINE.add(VdcActionType.MigrateVmToServer); COMMANDS_ALLOWED_ON_HOSTED_ENGINE.add(VdcActionType.InternalMigrateVm); diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java index 5816e5e..c3c5b6a 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java @@ -195,4 +195,13 @@ public static boolean hotPlugDiskSnapshot(Version version) { return supportedInConfig(ConfigValues.HotPlugDiskSnapshotSupported, version); } + + /** + * @param version + * Compatibility version to check for. + * @return <code>true</code> if VM reboot is supported for the given version + */ + public static boolean reboot(Version version) { + return supportedInConfig(ConfigValues.RebootSupported, version); + } } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java index ca0c942..f6fe98e 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java @@ -106,7 +106,7 @@ VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Up, EnumSet.of(VdcActionType.RunVm, @@ -122,7 +122,7 @@ VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.PoweringUp, EnumSet.of(VdcActionType.HibernateVm, VdcActionType.RunVm, @@ -138,7 +138,7 @@ VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.MigratingFrom, EnumSet.of(VdcActionType.RunVm, @@ -147,21 +147,21 @@ VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CreateAllSnapshotsFromVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Suspended, EnumSet.of(VdcActionType.HibernateVm, VdcActionType.AddVmTemplate, VdcActionType.RunVmOnce, VdcActionType.MigrateVm, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.RemoveVm, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Paused, EnumSet.of(VdcActionType.RemoveVm, VdcActionType.HibernateVm, VdcActionType.AddVmTemplate, VdcActionType.RunVmOnce, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.SavingState, EnumSet.of(VdcActionType.RunVm, @@ -171,7 +171,7 @@ VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.PreparingForHibernate, EnumSet.of(VdcActionType.RunVm, @@ -181,7 +181,7 @@ VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.RestoringState, EnumSet.of(VdcActionType.RunVm, @@ -190,13 +190,14 @@ VdcActionType.AddVmTemplate, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Down, EnumSet.of(VdcActionType.StopVm, VdcActionType.ShutdownVm, VdcActionType.HibernateVm, VdcActionType.MigrateVm, VdcActionType.ChangeDisk, - VdcActionType.CancelMigrateVm)); + VdcActionType.CancelMigrateVm, VdcActionType.RebootVm)); vmMatrix.put( VMStatus.ImageIllegal, EnumSet.of(VdcActionType.RunVm, @@ -215,7 +216,8 @@ VdcActionType.CreateAllSnapshotsFromVm, VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, - VdcActionType.ExtendImageSize)); + VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); vmMatrix.put( VMStatus.ImageLocked, EnumSet.of(VdcActionType.RunVm, @@ -224,7 +226,8 @@ VdcActionType.AddVmTemplate, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.CreateAllSnapshotsFromVm, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); vmMatrix.put( VMStatus.NotResponding, EnumSet.of(VdcActionType.RunVm, @@ -232,7 +235,8 @@ VdcActionType.RemoveVm, VdcActionType.AddVmTemplate, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Unassigned, @@ -242,7 +246,8 @@ VdcActionType.AddVmTemplate, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.CreateAllSnapshotsFromVm, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); vmMatrix.put( VMStatus.Unknown, EnumSet.of(VdcActionType.RunVm, @@ -251,7 +256,8 @@ VdcActionType.AddVmTemplate, VdcActionType.ExportVm, VdcActionType.MoveVm, VdcActionType.ImportVm, VdcActionType.ChangeDisk, VdcActionType.CreateAllSnapshotsFromVm, VdcActionType.AddVmInterface, VdcActionType.UpdateVmInterface, - VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize)); + VdcActionType.RemoveVmInterface, VdcActionType.CancelMigrateVm, VdcActionType.ExtendImageSize, + VdcActionType.RebootVm)); _matrix.put(VM.class, vmMatrix); Map<Enum<?>, Set<VdcActionType>> vmTemplateMatrix = new HashMap<Enum<?>, Set<VdcActionType>>(); diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java index e755a4d..4037574 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java @@ -12,6 +12,7 @@ AddVmFromScratch(3, ActionGroup.CREATE_VM, QuotaDependency.BOTH), RemoveVm(4, ActionGroup.DELETE_VM, QuotaDependency.STORAGE), UpdateVm(5, ActionGroup.EDIT_VM_PROPERTIES, QuotaDependency.VDS_GROUP), + RebootVm(6, ActionGroup.VM_BASIC_OPERATIONS, QuotaDependency.NONE), StopVm(7, ActionGroup.VM_BASIC_OPERATIONS, QuotaDependency.BOTH), ShutdownVm(8, ActionGroup.VM_BASIC_OPERATIONS, QuotaDependency.VDS_GROUP), ChangeDisk(9, ActionGroup.CHANGE_VM_CD, QuotaDependency.NONE), diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java index 2e30bfdf..e78fdfc 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java @@ -1570,5 +1570,9 @@ @DefaultValueAttribute("10") MaxNumOfTriesToRunFailedAutoStartVm, + @TypeConverterAttribute(Boolean.class) + @DefaultValueAttribute("false") + RebootSupported, + Invalid; } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java index a3a239a..255eae5 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java @@ -110,7 +110,8 @@ DefaultWindowsTimeZone, SpeedOptimizationSchedulingThreshold, SchedulerAllowOverBooking, - SchedulerOverBookingThreshold; + SchedulerOverBookingThreshold, + RebootSupported; public static enum ConfigAuthType { Admin, diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java index 27b7ab0..8648cab 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java @@ -8,6 +8,7 @@ GetStats("org.ovirt.engine.core.vdsbroker.vdsbroker"), CreateVm("org.ovirt.engine.core.vdsbroker"), DestroyVm("org.ovirt.engine.core.vdsbroker"), + RebootVm("org.ovirt.engine.core.vdsbroker.vdsbroker"), Pause("org.ovirt.engine.core.vdsbroker.vdsbroker"), Hibernate("org.ovirt.engine.core.vdsbroker"), Resume("org.ovirt.engine.core.vdsbroker"), diff --git a/backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties b/backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties index 4066f8f..4c2e1b8 100644 --- a/backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties +++ b/backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties @@ -7,6 +7,7 @@ job.UpdateVm=Editing VM ${VM} properties job.StopVm=Stopping VM ${VM} job.ShutdownVm=Shutting down VM ${VM} +job.RebootVm=Rebooting VM ${VM} job.HibernateVm=Performing Hibernate action on VM ${VM} job.UpdateWatchdog=Updating watchdog on VM ${VM} job.AddWatchdog=Adding watchdog to VM ${VM} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java index 8fa530d..3fa9d52 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java @@ -28,6 +28,8 @@ StatusOnlyReturnForXmlRpc shutdown(String vmId, String timeout, String message); + StatusOnlyReturnForXmlRpc shutdown(String vmId, String timeout, String message, boolean reboot); + OneVmReturnForXmlRpc pause(String vmId); StatusOnlyReturnForXmlRpc hibernate(String vmId, String hiberVolHandle); diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/RebootVmVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/RebootVmVDSCommand.java new file mode 100644 index 0000000..50d5d52 --- /dev/null +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/RebootVmVDSCommand.java @@ -0,0 +1,20 @@ +package org.ovirt.engine.core.vdsbroker.vdsbroker; + +import org.ovirt.engine.core.common.config.Config; +import org.ovirt.engine.core.common.config.ConfigValues; +import org.ovirt.engine.core.common.vdscommands.VdsAndVmIDVDSParametersBase; + +public class RebootVmVDSCommand<P extends VdsAndVmIDVDSParametersBase> extends VdsBrokerCommand<P> { + + public RebootVmVDSCommand(P parameters) { + super(parameters); + } + + @Override + protected void executeVdsBrokerCommand() { + final Integer timeout = Config.getValue(ConfigValues.VmGracefulShutdownTimeout); + final String message = Config.getValue(ConfigValues.VmGracefulShutdownMessage); + status = getBroker().shutdown(getParameters().getVmId().toString(), timeout.toString(), message, true); + proceedProxyReturnValue(); + } +} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java index 0cd2d0f..fb37e79 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java @@ -10,6 +10,8 @@ public Map<String, Object> shutdown(String vmId, String timeout, String message); + public Map<String, Object> shutdown(String vmId, String timeout, String message, boolean reboot); + public Map<String, Object> pause(String vmId); public Map<String, Object> hibernate(String vmId, String hiberVolHandle); diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java index bc4ad53..d826685 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java @@ -75,6 +75,17 @@ } @Override + public StatusOnlyReturnForXmlRpc shutdown(String vmId, String timeout, String message, boolean reboot) { + try { + Map<String, Object> xmlRpcReturnValue = vdsServer.shutdown(vmId, timeout, message, reboot); + StatusOnlyReturnForXmlRpc wrapper = new StatusOnlyReturnForXmlRpc(xmlRpcReturnValue); + return wrapper; + } catch (UndeclaredThrowableException ute) { + throw new XmlRpcRunTimeException(ute); + } + } + + @Override public OneVmReturnForXmlRpc pause(String vmId) { try { Map<String, Object> xmlRpcReturnValue = vdsServer.pause(vmId); diff --git a/packaging/dbscripts/upgrade/03_04_0320_add_reboot_command.sql b/packaging/dbscripts/upgrade/03_04_0320_add_reboot_command.sql new file mode 100644 index 0000000..494e89c --- /dev/null +++ b/packaging/dbscripts/upgrade/03_04_0320_add_reboot_command.sql @@ -0,0 +1 @@ +insert into action_version_map values (6, '3.4', '*'); diff --git a/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql b/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql index eea7126..9ccf343 100644 --- a/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql +++ b/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql @@ -228,6 +228,7 @@ select fn_db_add_config_value('HotPlugDiskSnapshotSupported','false','3.0'); select fn_db_add_config_value('HotPlugDiskSnapshotSupported','false','3.1'); select fn_db_add_config_value('HotPlugDiskSnapshotSupported','false','3.2'); +select fn_db_add_config_value('RebootSupported','true','3.4'); -- by default use no proxy select fn_db_add_config_value('SpiceProxyDefault','','general'); -- To view, visit http://gerrit.ovirt.org/22744 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0693943c01e204da877268c02957f3b936cf3fa2 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Betak <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
