Darshan N has uploaded a new change for review.
Change subject: gluster: Modified geo-rep verbs to include newly added "user"
......................................................................
gluster: Modified geo-rep verbs to include newly added "user"
In this patch all the geo-replication related verbs have
been modified to include user name as an argument. This
is need to execute all gluster cli commands, when geo-
replication session is set with a non-root user. This
patch also modifies geo-rep list and status verbs to
list the remote user name which was newly added in gluster
cli.
Change-Id: I336e6c8c6d433787bda4b508b87b6bf9a90f137a
Signed-off-by: Darshan N <dnarayan(a)redhat.com>
---
M client/vdsClientGluster.py
M tests/glusterGeoRepStatus.xml
M tests/glusterTestData.py
M vdsm/gluster/api.py
M vdsm/gluster/apiwrapper.py
M vdsm/gluster/cli.py
M vdsm/rpc/vdsmapi-gluster-schema.json
7 files changed, 162 insertions(+), 60 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/18/38318/1
diff --git a/client/vdsClientGluster.py b/client/vdsClientGluster.py
index d86d16d..fd0f674 100644
--- a/client/vdsClientGluster.py
+++ b/client/vdsClientGluster.py
@@ -439,6 +439,7 @@
def do_glusterVolumeGeoRepSessionStart(self, args):
params = self._eqSplit(args)
volumeName = params.get('volumeName', '')
+ userName = params.get('userName', '')
remoteHost = params.get('remoteHost', '')
remoteVolumeName = params.get('remoteVolumeName', '')
force = (params.get('force', 'no').upper() == 'YES')
@@ -446,6 +447,7 @@
status = self.s.glusterVolumeGeoRepSessionStart(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -454,12 +456,14 @@
params = self._eqSplit(args)
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
+ userName = params.get('userName', '')
remoteVolumeName = params.get('remoteVolumeName', '')
force = (params.get('force', 'no').upper() == 'YES')
status = self.s.glusterVolumeGeoRepSessionStop(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -468,10 +472,12 @@
params = self._eqSplit(args)
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
+ userName = params.get('userName', '')
remoteVolumeName = params.get('remoteVolumeName', '')
status = self.s.glusterVolumeGeoRepSessionList(volumeName, remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -479,11 +485,13 @@
params = self._eqSplit(args)
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
+ userName = params.get('userName', '')
remoteVolumeName = params.get('remoteVolumeName', '')
status = self.s.glusterVolumeGeoRepSessionStatus(volumeName,
remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -493,11 +501,13 @@
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
remoteVolumeName = params.get('remoteVolumeName', '')
+ userName = params.get('userName', '')
force = (params.get('force', 'no').upper() == 'YES')
status = self.s.glusterVolumeGeoRepSessionPause(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -507,11 +517,13 @@
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
remoteVolumeName = params.get('remoteVolumeName', '')
+ userName = params.get('userName', '')
force = (params.get('force', 'no').upper() == 'YES')
status = self.s.glusterVolumeGeoRepSessionResume(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -520,11 +532,13 @@
params = self._eqSplit(args)
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
+ userName = params.get('userName', '')
remoteVolumeName = params.get('remoteVolumeName', '')
status = self.s.glusterVolumeGeoRepConfigList(volumeName,
remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -533,6 +547,7 @@
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
remoteVolumeName = params.get('remoteVolumeName', '')
+ userName = params.get('userName', '')
optionName = params.get('optionName', '')
optionValue = params.get('optionValue', '')
@@ -540,7 +555,8 @@
remoteHost,
remoteVolumeName,
optionName,
- optionValue)
+ optionValue,
+ userName)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -549,12 +565,14 @@
volumeName = params.get('volumeName', '')
remoteHost = params.get('remoteHost', '')
remoteVolumeName = params.get('remoteVolumeName', '')
+ userName = params.get('userName', '')
optionName = params.get('optionName', '')
status = self.s.glusterVolumeGeoRepConfigReset(volumeName,
remoteHost,
remoteVolumeName,
- optionName)
+ optionName,
+ userName)
pp.pprint(status)
return status['status']['code'],
status['status']['message']
@@ -926,6 +944,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'[force={yes|no}]\n\t'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
@@ -936,6 +955,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'[force={yes|no}]\n\t'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
@@ -946,6 +966,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
'list the geo-replication sessions'
@@ -955,6 +976,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
'get the geo-replication session status'
@@ -964,6 +986,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'[force={yes|no}]\n\t'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
@@ -974,6 +997,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'[force={yes|no}]\n\t'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
@@ -984,6 +1008,7 @@
('volumeName=<volume_name> '
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
+ 'userName=<user_name>'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
'Get the list of geo-replication configuration for a session'
@@ -995,6 +1020,7 @@
'remoteVolumeName=<remote_volume_name> '
'optionName=<option_name>'
'optionValue=<option_value>'
+ 'userName=<user_name>'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
'set a geo-replication configuration for a session'
@@ -1005,6 +1031,7 @@
'remoteHost=<remote_host> '
'remoteVolumeName=<remote_volume_name> '
'optionName=<option_name>'
+ 'userName=<user_name>'
'<remote_host> is IP/dns name of host in remote Gluster
cluster.'
'<remote_volume_name> volume name in remote gluster
cluster.',
'Reset a geo-replication configuration to its default value'
diff --git a/tests/glusterGeoRepStatus.xml b/tests/glusterGeoRepStatus.xml
index afdff48..cf3a28c 100644
--- a/tests/glusterGeoRepStatus.xml
+++ b/tests/glusterGeoRepStatus.xml
@@ -13,6 +13,7 @@
<master_node>localhost.localdomain</master_node>
<master_node_uuid>6a2f7584-05a8-4651-8786-1cd6ae87b896</master_node_uuid>
<master_brick>/root/b1_vol1</master_brick>
+ <slave_user>root</slave_user>
<slave>192.168.122.145::vol2</slave>
<status>Stopped</status>
<checkpoint_status>N/A</checkpoint_status>
diff --git a/tests/glusterTestData.py b/tests/glusterTestData.py
index 165c1c3..0e4d09b 100644
--- a/tests/glusterTestData.py
+++ b/tests/glusterTestData.py
@@ -1064,6 +1064,7 @@
'crawlStatus': 'N/A',
'filesPending': '0',
'filesSynced': '0',
+ 'user': 'root',
'hostUuid': '6a2f7584-05a8-4651-8786-1cd6ae87b896',
'remoteHost': '192.168.122.145',
'checkpointStatus': 'N/A',
diff --git a/vdsm/gluster/api.py b/vdsm/gluster/api.py
index 6d7e139..1a54da3 100644
--- a/vdsm/gluster/api.py
+++ b/vdsm/gluster/api.py
@@ -331,87 +331,102 @@
@exportAsVerb
def volumeGeoRepSessionStart(self, volumeName, remoteHost,
remoteVolumeName,
+ userName=None,
force=False, options=None):
self.svdsmProxy.glusterVolumeGeoRepSessionStart(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
@exportAsVerb
- def volumeGeoRepSessionStop(self, volumeName, remoteHost, remoteVolumeName,
+ def volumeGeoRepSessionStop(self, volumeName, remoteHost,
+ remoteVolumeName, userName=None,
force=False, options=None):
self.svdsmProxy.glusterVolumeGeoRepSessionStop(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
@exportAsVerb
def volumeGeoRepSessionList(self, volumeName=None, remoteHost=None,
- remoteVolumeName=None, options=None):
+ remoteVolumeName=None, userName=None,
+ options=None):
status = self.svdsmProxy.glusterVolumeGeoRepStatus(
volumeName,
remoteHost,
- remoteVolumeName
+ remoteVolumeName,
+ userName,
)
return {'sessions': status}
@exportAsVerb
def volumeGeoRepSessionStatus(self, volumeName, remoteHost,
- remoteVolumeName, options=None):
+ remoteVolumeName, userName=None,
+ options=None):
status = self.svdsmProxy.glusterVolumeGeoRepStatus(
volumeName,
remoteHost,
remoteVolumeName,
+ userName,
detail=True
)
return {'sessionStatus': status}
@exportAsVerb
def volumeGeoRepSessionPause(self, volumeName, remoteHost,
- remoteVolumeName,
+ remoteVolumeName, userName=None,
force=False, options=None):
self.svdsmProxy.glusterVolumeGeoRepSessionPause(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
@exportAsVerb
def volumeGeoRepSessionResume(self, volumeName, remoteHost,
- remoteVolumeName,
+ remoteVolumeName, userName=None,
force=False, options=None):
self.svdsmProxy.glusterVolumeGeoRepSessionResume(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
@exportAsVerb
- def volumeGeoRepConfigList(self, volumeName, remoteHost, remoteVolumeName,
+ def volumeGeoRepConfigList(self, volumeName, remoteHost,
+ remoteVolumeName, userName=None,
options=None):
status = self.svdsmProxy.glusterVolumeGeoRepConfig(
volumeName,
remoteHost,
- remoteVolumeName
+ remoteVolumeName,
+ userName=userName
)
return {'sessionConfig': status}
@exportAsVerb
def volumeGeoRepConfigSet(self, volumeName, remoteHost, remoteVolumeName,
- optionName, optionValue, options=None):
+ optionName, optionValue, userName=None,
+ options=None):
self.svdsmProxy.glusterVolumeGeoRepConfig(volumeName,
remoteHost,
remoteVolumeName,
optionName,
- optionValue)
+ optionValue,
+ userName)
@exportAsVerb
def volumeGeoRepConfigReset(self, volumeName, remoteHost,
- remoteVolumeName,
- optionName, options=None):
+ remoteVolumeName, optionName,
+ userName=None, options=None):
self.svdsmProxy.glusterVolumeGeoRepConfig(
volumeName,
remoteHost,
remoteVolumeName,
- optionName)
+ optionName,
+ userName=userName)
@exportAsVerb
def volumeSnapshotCreate(self, volumeName, snapName,
diff --git a/vdsm/gluster/apiwrapper.py b/vdsm/gluster/apiwrapper.py
index f4177cd..490f20b 100644
--- a/vdsm/gluster/apiwrapper.py
+++ b/vdsm/gluster/apiwrapper.py
@@ -183,61 +183,71 @@
return self._gluster.volumeRebalanceStatus(volumeName)
def geoRepSessionStart(self, volumeName, remoteHost,
- remoteVolumeName, force=False):
+ remoteVolumeName, userName=None, force=False):
return self._gluster.volumeGeoRepSessionStart(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
def geoRepSessionStop(self, volumeName, remoteHost,
- remoteVolumeName, force=False):
+ remoteVolumeName, userName=None, force=False):
return self._gluster.volumeGeoRepSessionStop(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
def geoRepSessionStatus(self, masterVolumeName, remoteHost,
- remoteVolumeName):
+ remoteVolumeName, userName=None):
return self._gluster.volumeGeoRepSessionStatus(masterVolumeName,
remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
def geoRepSessionList(self, masterVolumeName=None, remoteHost=None,
- remoteVolumeName=None):
+ remoteVolumeName=None, userName=None):
return self._gluster.volumeGeoRepSessionList(masterVolumeName,
remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
def geoRepSessionPause(self, volumeName, remoteHost,
- remoteVolumeName, force=False):
+ remoteVolumeName, userName=None, force=False):
return self._gluster.volumeGeoRepSessionPause(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
def geoRepSessionResume(self, volumeName, remoteHost,
- remoteVolumeName, force=False):
+ remoteVolumeName, userName=None, force=False):
return self._gluster.volumeGeoRepSessionResume(volumeName,
remoteHost,
remoteVolumeName,
+ userName,
force)
- def geoRepConfigList(self, volumeName, remoteHost, remoteVolumeName):
+ def geoRepConfigList(self, volumeName, remoteHost, remoteVolumeName,
+ userName=None):
return self._gluster.volumeGeoRepConfigList(volumeName, remoteHost,
- remoteVolumeName)
+ remoteVolumeName,
+ userName)
def geoRepConfigSet(self, volumeName, remoteHost, remoteVolumeName,
- optionName, optionValue):
+ optionName, optionValue, userName=None):
return self._gluster.volumeGeoRepConfigSet(volumeName, remoteHost,
remoteVolumeName,
- optionName, optionValue)
+ optionName, optionValue,
+ userName)
def geoRepConfigReset(self, volumeName, remoteHost,
- remoteVolumeName, optionName):
+ remoteVolumeName, optionName, userName=None):
return self._gluster.volumeGeoRepConfigReset(volumeName,
remoteHost,
remoteVolumeName,
- optionName)
+ optionName,
+ userName)
def snapshotCreate(self, volumeName,
snapName, snapDescription=None,
diff --git a/vdsm/gluster/cli.py b/vdsm/gluster/cli.py
index e60da27..3408f74 100644
--- a/vdsm/gluster/cli.py
+++ b/vdsm/gluster/cli.py
@@ -1066,9 +1066,13 @@
@makePublic
def volumeGeoRepSessionStart(volumeName, remoteHost, remoteVolumeName,
- force=False):
+ userName=None, force=False):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd() + [volumeName, "%s::%s" % (
- remoteHost, remoteVolumeName), "start"]
+ userAtHost, remoteVolumeName), "start"]
if force:
command.append('force')
try:
@@ -1081,9 +1085,13 @@
@makePublic
def volumeGeoRepSessionStop(volumeName, remoteHost, remoteVolumeName,
- force=False):
+ userName=None, force=False):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd() + [volumeName, "%s::%s" % (
- remoteHost, remoteVolumeName), "stop"]
+ userAtHost, remoteVolumeName), "stop"]
if force:
command.append('force')
try:
@@ -1132,6 +1140,7 @@
pairDetail['brickName'] = pair.find('master_brick').text
pairDetail['remoteHost'] = pair.find(
'slave').text.split("::")[0]
+ pairDetail['user'] = pair.find('slave_user').text
pairDetail['status'] = pair.find('status').text
pairDetail['checkpointStatus'] = pair.find(
'checkpoint_status').text
@@ -1156,12 +1165,16 @@
@makePublic
def volumeGeoRepStatus(volumeName=None, remoteHost=None,
- remoteVolumeName=None, detail=False):
+ remoteVolumeName=None, userName=None, detail=False):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd()
if volumeName:
command.append(volumeName)
if remoteHost and remoteVolumeName:
- command.append("%s::%s" % (remoteHost, remoteVolumeName))
+ command.append("%s::%s" % (userAtHost, remoteVolumeName))
command.append("status")
if detail:
command.append("detail")
@@ -1178,9 +1191,13 @@
@makePublic
def volumeGeoRepSessionPause(volumeName, remoteHost, remoteVolumeName,
- force=False):
+ userName=None, force=False):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd() + [volumeName, "%s::%s" % (
- remoteHost, remoteVolumeName), "pause"]
+ userAtHost, remoteVolumeName), "pause"]
if force:
command.append('force')
try:
@@ -1193,9 +1210,13 @@
@makePublic
def volumeGeoRepSessionResume(volumeName, remoteHost, remoteVolumeName,
- force=False):
+ userName=None, force=False):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd() + [volumeName, "%s::%s" % (
- remoteHost, remoteVolumeName), "resume"]
+ userAtHost, remoteVolumeName), "resume"]
if force:
command.append('force')
try:
@@ -1222,9 +1243,14 @@
@makePublic
def volumeGeoRepConfig(volumeName, remoteHost,
remoteVolumeName, optionName=None,
- optionValue=None):
+ optionValue=None,
+ userName=None):
+ if userName:
+ userAtHost = "%s@%s" % (userName, remoteHost)
+ else:
+ userAtHost = remoteHost
command = _getGlusterVolGeoRepCmd() + [volumeName, "%s::%s" % (
- remoteHost, remoteVolumeName), "config"]
+ userAtHost, remoteVolumeName), "config"]
if optionName and optionValue:
command += [optionName, optionValue]
elif optionName:
diff --git a/vdsm/rpc/vdsmapi-gluster-schema.json b/vdsm/rpc/vdsmapi-gluster-schema.json
index 82ce8be..5bf986f 100644
--- a/vdsm/rpc/vdsmapi-gluster-schema.json
+++ b/vdsm/rpc/vdsmapi-gluster-schema.json
@@ -1294,13 +1294,16 @@
#
# Starts the Geo Replication session
#
-# @volumeName: Is an existing volume name in the master node
+# @volumeName: Is an existing volume name in the master node
#
-# @remoteHost: Is remote slave host name or ip
+# @remoteHost: Is remote slave host name or ip
#
# @remoteVolumeName: Is an available existing volume name in the slave node
#
-# @force: For starting a geo-replication session forcefully
+# @userName: #optional Name of user in remote Machine
+#
+# @force: #optional For starting a geo-replication session
+# forcefully
#
# Returns:
# True if session is successfully started
@@ -1309,7 +1312,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionStart'},
'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
- 'force': 'bool'},
+ '*userName': 'str', '*force': 'bool'},
'returns': 'bool'}
##
@@ -1317,13 +1320,15 @@
#
# Stops the Geo Replication session
#
-# @volumeName: Is an existing volume name in the master node
+# @volumeName: Is an existing volume name in the master node
#
-# @remoteHost: Is remote slave host name or ip
+# @remoteHost: Is remote slave host name or ip
#
# @remoteVolumeName: Is an available existing volume name in the slave node
#
-# @force: For stoping a geo-replication session forcefully
+# @userName: #optional Name of user in remote Machine
+#
+# @force: #optional For stoping a geo-replication session forcefully
#
# Returns:
# True if session is successfully stopped
@@ -1332,7 +1337,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionStop'},
'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
- 'force': 'bool'},
+ '*userName': 'str', '*force': 'bool'},
'returns': 'bool'}
# @geoRepPairInfo:
@@ -1346,6 +1351,8 @@
# @brickName: Local volume brick involved in session
#
# @remoteHost: The remote host involved in the session
+#
+# @user: Name of user in remote Machine
#
# @status: Status of geo replication
#
@@ -1366,7 +1373,7 @@
# Since: 4.17.0
##
{'type': 'geoRepPairInfo',
- 'data': {'host': 'str', 'hostUuid': 'UUID',
'brickName': 'str',
+ 'data': {'host': 'str', 'hostUuid': 'UUID',
'brickName': 'str', 'user': 'str',
'remoteHost': 'str', 'status': 'str',
'checkpointStatus': 'str',
'crawlStatus': 'str', '*filesSynced': 'str',
'*filesPending': 'str',
'*bytesPending': 'str', '*deletesPending':
'str',
@@ -1425,6 +1432,8 @@
# @remoteVolumeName: #optional Is an available existing volume name in the
# remote node
#
+# @userName: #optional Name of user in remote Machine
+#
# Returns:
# list of geo-replicaion sessions
#
@@ -1432,7 +1441,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionList'},
'data': {'*volumeName': 'str', '*remoteHost':
'str',
- '*remoteVolumeName': 'str'},
+ '*remoteVolumeName': 'str', '*userName':
'str'},
'returns': 'GlusterGeoRepSessionMap'}
##
@@ -1446,6 +1455,8 @@
#
# @remoteVolumeName: Is an available existing volume name in the remote node
#
+# @userName: #optional Name of user in remote Machine
+#
# Returns:
# Detailed information of geo-replication session
#
@@ -1453,7 +1464,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionStatus'},
'data': {'VolumeName': 'str', 'remoteHost':
'str',
- 'remoteVolumeName': 'str'},
+ 'remoteVolumeName': 'str', '*userName':
'str'},
'returns': 'GlusterGeoRepSessionMap'}
##
@@ -1467,6 +1478,8 @@
#
# @remoteVolumeName: Is an available existing volume name in the remote node
#
+# @userName: #optional Name of user in remote Machine
+#
# @force: #optional For pausing a geo-replication session
# forcefully
#
@@ -1477,7 +1490,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionPause'},
'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
- '*force': 'bool'},
+ '*userName': 'str', '*force': 'bool'},
'returns': 'bool'}
##
@@ -1491,6 +1504,8 @@
#
# @remoteVolumeName: Is an available existing volume name in the remote node
#
+# @userName: #optional Name of user in remote Machine
+#
# @force: #optional For resuming a geo-replication session
# forcefully
#
@@ -1501,7 +1516,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepSessionResume'},
'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
- '*force': 'bool'},
+ '*userName': 'str', '*force': 'bool'},
'returns': 'bool'}
##
@@ -1538,13 +1553,16 @@
#
# @remoteVolumeName: Is an available existing volume name in the remote node
#
+# @userName: #optional Name of user in remote Machine
+#
# Returns:
# List of geo replication configurations
#
# Since: 4.17.0
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepConfigList'},
- 'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str'},
+ 'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
+ '*userName': 'str'},
'returns': 'GeoRepConfig'}
##
@@ -1562,6 +1580,8 @@
#
# @optionValue: Value to the option
#
+# @userName: #optional Name of user in remote Machine
+#
# Returns:
# True if it sets value to the option successfully
#
@@ -1570,7 +1590,7 @@
{'command': {'class': 'GlusterVolume', 'name':
'geoRepConfigSet'},
'data': {'volumeName': 'str', 'remoteHost':
'str',
'remoteVolumeName': 'str', 'optionName':
'str',
- 'optionValue': 'str'},
+ 'optionValue': 'str', '*userName': 'str'},
'returns': 'bool'}
##
@@ -1586,6 +1606,8 @@
#
# @optionName: Valid configuration option name
#
+# @userName: #optional Name of user in remote Machine
+#
# Returns:
# True if default value is set successfully
#
@@ -1593,7 +1615,7 @@
##
{'command': {'class': 'GlusterVolume', 'name':
'geoRepConfigReset'},
'data': {'volumeName': 'str', 'remoteHost':
'str', 'remoteVolumeName': 'str',
- 'optionName': 'str'},
+ 'optionName': 'str', '*userName': 'str'},
'returns': 'bool'}
##
--
To view, visit
https://gerrit.ovirt.org/38318
To unsubscribe, visit
https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I336e6c8c6d433787bda4b508b87b6bf9a90f137a
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Darshan N <dnarayan(a)redhat.com>