From 69a5e67a588c3e4724f93e20792bb12c51595c2e Mon Sep 17 00:00:00 2001
From: ugaston <ugaston@localhost>
Date: Wed, 12 Aug 2009 16:46:00 +0000
Subject: [PATCH] Make replication func tests server-splittable + small fixes
---
opends/tests/staf-tests/shared/functions/topology.xml | 152 +++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 118 insertions(+), 34 deletions(-)
diff --git a/opends/tests/staf-tests/shared/functions/topology.xml b/opends/tests/staf-tests/shared/functions/topology.xml
index 857c187..ffb009f 100755
--- a/opends/tests/staf-tests/shared/functions/topology.xml
+++ b/opends/tests/staf-tests/shared/functions/topology.xml
@@ -56,12 +56,25 @@
</function-arg-description>
<function-arg-property name="type" value="string"/>
</function-arg-def>
+ <function-arg-def name="splitReplicationServers"
+ type="optional"
+ default="False">
+ <function-arg-description>
+ Specifies whether the replication servers should be split from the
+ ldap servers and be configured on separate instances.
+ </function-arg-description>
+ <function-arg-property name="type" value="boolean"/>
+ </function-arg-def>
</function-map-args>
<sequence>
<script>
if not sharedDataFolder and CurrentTestPath.has_key('group'):
sharedDataFolder=CurrentTestPath['group']
+
+ _topologyServerList = []
+ _topologyReplServerList = []
+ _splitServerList = []
</script>
<call function="'prepareInstanceCreation'">
@@ -100,12 +113,34 @@
{ 'file' : topologyDescFile }
</call>
+ <if expr="splitReplicationServers">
+ <sequence>
+ <message>
+ 'Replication servers will be splitted from ldap servers.'
+ </message>
+ <iterate var="server" in="_topologyServerList" indexvar="i">
+ <sequence>
+ <script>
+ _topologyReplServerList.append(server.splitReplServer())
+ _splitServerList.append(server)
+ _splitServerList.append(_topologyReplServerList[i])
+ </script>
+ </sequence>
+ </iterate>
+ </sequence>
+ <else>
+ <script>
+ _splitServerList = _topologyServerList
+ </script>
+ </else>
+ </if>
+
<message>
'Number of server instances required by the deployment: %s' \
- % len(_topologyServerList)
+ % len(_splitServerList)
</message>
- <iterate var="server" in="_topologyServerList">
+ <iterate var="server" in="_splitServerList">
<sequence>
<!-- Create the instance-->
<call function="'createInstance'">
@@ -1031,8 +1066,26 @@
Encrypt communications over dsReplicationPort (secure replication)
</function-arg-description>
<function-arg-property name="type" value="boolean" />
- </function-arg-def>
-
+ </function-arg-def>
+
+ <function-arg-def name="dsOnlyLdapServer"
+ type="optional"
+ default="None">
+ <function-arg-description>
+ Server only to contain replicated data (no Repl server/changelog)
+ </function-arg-description>
+ <function-arg-property name="type" value="boolean" />
+ </function-arg-def>
+
+ <function-arg-def name="dsOnlyReplServer"
+ type="optional"
+ default="None">
+ <function-arg-description>
+ Server only to contain Repl server/changelog (no replicated data)
+ </function-arg-description>
+ <function-arg-property name="type" value="boolean" />
+ </function-arg-def>
+
<function-arg-def name="refInstanceHost"
type="optional"
default="STAF_REMOTE_HOSTNAME">
@@ -1079,7 +1132,26 @@
Encrypt communications over refReplicationPort (secure replication)
</function-arg-description>
<function-arg-property name="type" value="boolean" />
- </function-arg-def>
+ </function-arg-def>
+
+ <function-arg-def name="refOnlyLdapServer"
+ type="optional"
+ default="None">
+ <function-arg-description>
+ Server only to contain replicated data (no Repl server/changelog)
+ </function-arg-description>
+ <function-arg-property name="type" value="boolean" />
+ </function-arg-def>
+
+ <function-arg-def name="refOnlyReplServer"
+ type="optional"
+ default="None">
+ <function-arg-description>
+ Server only to contain Repl server/changelog (no replicated data)
+ </function-arg-description>
+ <function-arg-property name="type" value="boolean" />
+ </function-arg-def>
+
<function-arg-def name="replicationDnList" type="required">
<function-arg-description>
@@ -1089,8 +1161,8 @@
</function-arg-def>
<function-arg-def name="adminUID"
- type="optional"
- default="AdminUID">
+ type="optional"
+ default="AdminUID">
<function-arg-description>
Global Administrator UID
</function-arg-description>
@@ -1098,8 +1170,8 @@
</function-arg-def>
<function-arg-def name="adminPswd"
- type="optional"
- default="AdminPswd">
+ type="optional"
+ default="AdminPswd">
<function-arg-description>
Global Administrator password
</function-arg-description>
@@ -1148,41 +1220,53 @@
STAFCmdParamsList.append('-Q')
STAFCmdParamsList.append('-X')
- if dsInstanceHost:
- STAFCmdParamsList.append('--host1 %s' % dsInstanceHost)
-
- if dsInstanceAdminPort:
- STAFCmdParamsList.append('--port1 %s' % dsInstanceAdminPort)
-
- if dsInstanceDn:
- STAFCmdParamsList.append('--bindDN1 "%s"' % dsInstanceDn)
-
- if dsInstancePswd:
- STAFCmdParamsList.append('--bindPassword1 "%s"' % dsInstancePswd)
-
- if dsReplicationPort:
- STAFCmdParamsList.append('--replicationPort1 %s' % dsReplicationPort)
-
- if dsSecureReplication:
- STAFCmdParamsList.append('--secureReplication1')
-
if refInstanceHost:
- STAFCmdParamsList.append('--host2 %s' % refInstanceHost)
+ STAFCmdParamsList.append('--host1 %s' % refInstanceHost)
if refInstanceAdminPort:
- STAFCmdParamsList.append('--port2 %s' % refInstanceAdminPort)
+ STAFCmdParamsList.append('--port1 %s' % refInstanceAdminPort)
if refInstanceDn:
- STAFCmdParamsList.append('--bindDN2 "%s"' % refInstanceDn)
+ STAFCmdParamsList.append('--bindDN1 "%s"' % refInstanceDn)
if refInstancePswd:
- STAFCmdParamsList.append('--bindPassword2 "%s"' % refInstancePswd)
+ STAFCmdParamsList.append('--bindPassword1 "%s"' % refInstancePswd)
if refReplicationPort:
- STAFCmdParamsList.append('--replicationPort2 %s' % refReplicationPort)
+ STAFCmdParamsList.append('--replicationPort1 %s' % refReplicationPort)
if refSecureReplication:
- STAFCmdParamsList.append('--secureReplication2')
+ STAFCmdParamsList.append('--secureReplication1')
+
+ if refOnlyLdapServer:
+ STAFCmdParamsList.append('--noReplicationServer1')
+
+ if refOnlyReplServer:
+ STAFCmdParamsList.append('--onlyReplicationServer1')
+
+ if dsInstanceHost:
+ STAFCmdParamsList.append('--host2 %s' % dsInstanceHost)
+
+ if dsInstanceAdminPort:
+ STAFCmdParamsList.append('--port2 %s' % dsInstanceAdminPort)
+
+ if dsInstanceDn:
+ STAFCmdParamsList.append('--bindDN2 "%s"' % dsInstanceDn)
+
+ if dsInstancePswd:
+ STAFCmdParamsList.append('--bindPassword2 "%s"' % dsInstancePswd)
+
+ if dsReplicationPort:
+ STAFCmdParamsList.append('--replicationPort2 %s' % dsReplicationPort)
+
+ if dsSecureReplication:
+ STAFCmdParamsList.append('--secureReplication2')
+
+ if dsOnlyLdapServer:
+ STAFCmdParamsList.append('--noReplicationServer2')
+
+ if dsOnlyReplServer:
+ STAFCmdParamsList.append('--onlyReplicationServer2')
if replicationDnList:
for dn in replicationDnList:
@@ -1723,7 +1807,7 @@
<else>
<!-- MULTIPLE instance deployment: parameters read from
topologyDescFile -->
- <iterate var="server" in="_topologyServerList">
+ <iterate var="server" in="_splitServerList">
<call function="'removeInstance'">
{ 'dsHost' : server.getHostname(),
'dsDir' : server.getDir()
--
Gitblit v1.10.0