anmolbabu has uploaded a new change for review. Change subject: engine : Vds Command to set geo-rep config ......................................................................
engine : Vds Command to set geo-rep config Vds Command to set geo-rep config. Change-Id: I558ed18b94faae9d4b824c9de1fedda25ffc3f09 Signed-off-by: Anmol Babu <[email protected]> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java M backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java A backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.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 M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java 11 files changed, 90 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/35972/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java index d45bbb1..bc4da2b 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllErrors.java @@ -405,6 +405,7 @@ GlusterVolumeGeoRepStopFailedException(4596), GlusterVolumeGeoRepStatusFailed(4599), GlusterVolumeGeoRepStatusDetailFailed(4600), + GlusterGeoRepConfigSetFailed(4602), UnicodeArgumentException(4900), 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 2c41867..011c752 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 @@ -161,6 +161,7 @@ GetGlusterVolumeGeoRepStatusDetail("org.ovirt.engine.core.vdsbroker.gluster"), StopGlusterVolumeGeoRepSession("org.ovirt.engine.core.vdsbroker.gluster"), DeleteGlusterVolumeGeoRepSession("org.ovirt.engine.core.vdsbroker.gluster"), + GlusterVolumeGeoRepConfigSet("org.ovirt.engine.core.vdsbroker.gluster"), SetNumberOfCpus("org.ovirt.engine.core.vdsbroker"), UpdateVmPolicy("org.ovirt.engine.core.vdsbroker"), List("org.ovirt.engine.core.vdsbroker.vdsbroker"), // get a list of VMs with status only diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java new file mode 100644 index 0000000..a959b56 --- /dev/null +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/gluster/GlusterVolumeGeoRepConfigVdsParameters.java @@ -0,0 +1,41 @@ +package org.ovirt.engine.core.common.vdscommands.gluster; + +import org.ovirt.engine.core.compat.Guid; + +public class GlusterVolumeGeoRepConfigVdsParameters extends GlusterVolumeGeoRepSessionVDSParameters { + + private String configKey; + private String configValue; + + public GlusterVolumeGeoRepConfigVdsParameters() { + super(); + } + + public GlusterVolumeGeoRepConfigVdsParameters(Guid serverId, String volumeName, String slaveHost, String slaveVolume, Boolean force, String configKey, String configValue) { + super(serverId, volumeName, slaveHost, slaveVolume, force); + this.configKey = configKey; + this.configValue = configValue; + } + + public GlusterVolumeGeoRepConfigVdsParameters(Guid serverId, String volumeName, String slaveHost, String slaveVolume, String configKey, String configValue) { + super(serverId, volumeName, slaveHost, slaveVolume); + this.configKey = configKey; + this.configValue = configValue; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } +} diff --git a/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties b/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties index 6e1b462..3d0a969 100644 --- a/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties +++ b/backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties @@ -372,6 +372,7 @@ GlusterVolumeRebalanceStatusFailedException=Failed to get gluster volume rebalance status GlusterVolumeGeoRepStatusFailedException=Failed to get status information of geo-replication session(s) on gluster volume GlusterVolumeGeoRepStatusDetailFailedException=Failed to get detailed status information of geo-replication session(s) on gluster volume +GlusterGeoRepConfigSetFailed=Failed to set the geo-rep configuration GlusterLibgfapiException=Command failed due to gluster libgfapi exception GlfsStatvfsException=Failed to get gluster volume size info GlfsInitException=Command failed while mounting gluster volume diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java index 77cd29e..5ce9a4f 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/AbstractGlusterBrokerCommand.java @@ -68,6 +68,7 @@ case GlusterVolumeRemoveBricksCommitFailed: case GlusterVolumeGeoRepStatusFailed: case GlusterVolumeGeoRepStatusDetailFailed: + case GlusterGeoRepConfigSetFailed: case GlusterLibgfapiException: case GlfsStatvfsException: case GlfsInitException: diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java new file mode 100644 index 0000000..4cbffa9 --- /dev/null +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/gluster/GlusterVolumeGeoRepConfigSetVDSCommand.java @@ -0,0 +1,16 @@ +package org.ovirt.engine.core.vdsbroker.gluster; + +import org.ovirt.engine.core.common.vdscommands.gluster.GlusterVolumeGeoRepConfigVdsParameters; + +public class GlusterVolumeGeoRepConfigSetVDSCommand<P extends GlusterVolumeGeoRepConfigVdsParameters> extends AbstractGlusterBrokerCommand<P> { + + public GlusterVolumeGeoRepConfigSetVDSCommand(P parameters) { + super(parameters); + } + + @Override + protected void executeVdsBrokerCommand() { + status = getBroker().glusterVolumeGeoRepConfigSet(getParameters().getVolumeName(), getParameters().getSlaveHost(), getParameters().getSlaveVolume(), getParameters().getConfigKey(), getParameters().getConfigValue()); + proceedProxyReturnValue(); + } +} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java index 9e970e4..daac5af 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java @@ -1242,6 +1242,19 @@ } @Override + public StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String volumeName, String slaveHost, String slaveVolumeName, String configKey, String configValue) { + JsonRpcRequest request = new RequestBuilder("GlusterVolume.geoRepConfigSet") + .withParameter("volumeName", volumeName) + .withParameter("remoteHost", slaveHost) + .withParameter("remoteVolumeName", slaveVolumeName) + .withParameter("key", configKey) + .withParameter("value", configValue) + .build(); + Map<String, Object> response = new FutureMap(this.client, request); + return new StatusOnlyReturnForXmlRpc(response); + } + + @Override public GlusterServersListReturnForXmlRpc glusterServersList() { JsonRpcRequest request = new RequestBuilder("GlusterHost.list").build(); Map<String, Object> response = 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 92619fa..047e0ca 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 @@ -322,6 +322,8 @@ GlusterVolumeGeoRepStatusDetailForXmlRpc glusterVolumeGeoRepStatusDetail(String volumeName, String slaveHost, String slaveVolumeName); + StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String volumeName, String slaveHost, String slaveVolumeName, String configKey, String configValue); + GlusterVolumeTaskReturnForXmlRpc glusterVolumeRemoveBrickStatus(String volumeName, String[] bricksList); StatusOnlyReturnForXmlRpc setNumberOfCpus(String vmId, String numberOfCpus); 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 e97444b..fad9fb4 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 @@ -250,6 +250,8 @@ public Map<String, Object> glusterVolumeGeoRepSessionStop(String volumeName, String remoteHost, String remoteVolumeName, Boolean force); + public Map<String, Object> glusterVolumeGeoRepConfigSet(String volumeName, String slaveHost, String slaveVolumeName, String configKey, String configValue); + public Map<String, Object> ping(); @FutureCall(delegeteTo = "ping") 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 d027b50..f69aed0 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 @@ -1449,6 +1449,15 @@ } @Override + public StatusOnlyReturnForXmlRpc glusterVolumeGeoRepConfigSet(String volumeName, String slaveHost, String slaveVolumeName, String configKey, String configValue) { + try { + return new StatusOnlyReturnForXmlRpc(vdsServer.glusterVolumeGeoRepConfigSet(volumeName, slaveHost, slaveVolumeName, configKey, configValue)); + } catch (UndeclaredThrowableException ute) { + throw new XmlRpcRunTimeException(ute); + } + } + + @Override public StatusOnlyReturnForXmlRpc setNumberOfCpus(String vmId, String numberOfCpus) { try { return new StatusOnlyReturnForXmlRpc(vdsServer.setNumberOfCpus(vmId, numberOfCpus)); diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java index c796a35..be2a575 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/VdsmErrors.java @@ -806,6 +806,9 @@ @DefaultStringValue("Failed to get detailed status information of geo-replication session(s) on gluster volume") String GlusterVolumeGeoRepStatusDetailFailed(); + @DefaultStringValue("Failed to set the geo-rep configuration") + String GlusterGeoRepConfigSetFailed(); + @DefaultStringValue("Failed to get status of gluster volume remove bricks") String GlusterVolumeRemoveBrickStatusFailed(); -- To view, visit http://gerrit.ovirt.org/35972 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I558ed18b94faae9d4b824c9de1fedda25ffc3f09 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: anmolbabu <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
