From 6eaa6b14cb1cb5a9199b32b3cf16858db18636c0 Mon Sep 17 00:00:00 2001
From: andrug <andrug@localhost>
Date: Thu, 27 Mar 2008 11:39:49 +0000
Subject: [PATCH] copy phases/shared/java folder on each instance hosts

---
 opendj-sdk/opends/tests/system-tests/phases/scheduler/scheduler.xml    |   90 ----------------------
 opendj-sdk/opends/tests/system-tests/phases/main_run_lib.xml           |   99 ++++++++++++++++++------
 opendj-sdk/opends/tests/system-tests/clients/modifyLoad/modifyLoad.xml |   12 +-
 opendj-sdk/opends/tests/system-tests/phases/main_run.xml               |    1 
 opendj-sdk/opends/tests/system-tests/clients/searchLoad/searchLoad.xml |   10 +-
 5 files changed, 90 insertions(+), 122 deletions(-)

diff --git a/opendj-sdk/opends/tests/system-tests/clients/modifyLoad/modifyLoad.xml b/opendj-sdk/opends/tests/system-tests/clients/modifyLoad/modifyLoad.xml
index d2cde23..d6d0ef3 100755
--- a/opendj-sdk/opends/tests/system-tests/clients/modifyLoad/modifyLoad.xml
+++ b/opendj-sdk/opends/tests/system-tests/clients/modifyLoad/modifyLoad.xml
@@ -124,7 +124,7 @@
             <location>client.getHost()</location>
             <command mode="'shell'">'chmod +x build.ksh'</command>
             <parms/>
-            <workdir>'%s/clients/modifyLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/modifyLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout/>
@@ -155,7 +155,7 @@
             <location>client.getHost()</location>
             <command mode="'shell'">'./build.ksh'</command>
             <parms/>
-            <workdir>'%s/clients/modifyLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/modifyLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout/>
@@ -193,8 +193,10 @@
           <script>
             cParam = '-client -Xmx1G -Xms1G'
             cParam = '%s -XX:NewRatio=1 -XX:SurvivorRatio=100' % cParam
-            cParam = '%s -cp %s/clients/LDAPjdk/ldapjdk.jar' % (cParam,LOG_DIR)
-            cParam = '%s:%s/clients/searchLoad/search.jar' % (cParam,LOG_DIR)
+            cParam = '%s -cp %s/clients/LDAPjdk/ldapjdk.jar' \
+                      % (cParam,LOCAL_TESTS_DIR)
+            cParam = '%s:%s/clients/searchLoad/search.jar' \
+                      % (cParam,LOCAL_TESTS_DIR)
             cParam = '%s Client %s' % (cParam,parms)
             
             titleName = '%s: run %s on %s' % \
@@ -205,7 +207,7 @@
             <location>client.getHost()</location>
             <command>'java'</command>
             <parms>cParam </parms>
-            <workdir>'%s/clients/searchLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/searchLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout>outFile</stdout>
diff --git a/opendj-sdk/opends/tests/system-tests/clients/searchLoad/searchLoad.xml b/opendj-sdk/opends/tests/system-tests/clients/searchLoad/searchLoad.xml
index f9b2094..9209b8d 100755
--- a/opendj-sdk/opends/tests/system-tests/clients/searchLoad/searchLoad.xml
+++ b/opendj-sdk/opends/tests/system-tests/clients/searchLoad/searchLoad.xml
@@ -124,7 +124,7 @@
             <location>client.getHost()</location>
             <command mode="'shell'">'chmod +x build.ksh'</command>
             <parms/>
-            <workdir>'%s/clients/searchLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/searchLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout/>
@@ -155,7 +155,7 @@
             <location>client.getHost()</location>
             <command mode="'shell'">'./build.ksh'</command>
             <parms/>
-            <workdir>'%s/clients/searchLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/searchLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout/>
@@ -193,8 +193,8 @@
           <script>
             cParam = '-client -Xmx1G -Xms1G'
             cParam = '%s -XX:NewRatio=1 -XX:SurvivorRatio=100' % cParam
-            cParam = '%s -cp %s/clients/LDAPjdk/ldapjdk.jar' % (cParam,LOG_DIR)
-            cParam = '%s:%s/clients/searchLoad/search.jar' % (cParam,LOG_DIR)
+            cParam = '%s -cp %s/clients/LDAPjdk/ldapjdk.jar' % (cParam,LOCAL_TESTS_DIR)
+            cParam = '%s:%s/clients/searchLoad/search.jar' % (cParam,LOCAL_TESTS_DIR)
             cParam = '%s Client %s' % (cParam,parms)
             
             titleName = '%s: run %s on %s' % \
@@ -205,7 +205,7 @@
             <location>client.getHost()</location>
             <command>'java'</command>
             <parms>cParam </parms>
-            <workdir>'%s/clients/searchLoad' % LOG_DIR</workdir>
+            <workdir>'%s/clients/searchLoad' % LOCAL_TESTS_DIR</workdir>
             <envs>['PATH=/bin:/usr/bin']</envs>
             <stderr mode="'stdout'"/>
             <stdout>outFile</stdout>
diff --git a/opendj-sdk/opends/tests/system-tests/phases/main_run.xml b/opendj-sdk/opends/tests/system-tests/phases/main_run.xml
index d9a81b8..577c79b 100644
--- a/opendj-sdk/opends/tests/system-tests/phases/main_run.xml
+++ b/opendj-sdk/opends/tests/system-tests/phases/main_run.xml
@@ -163,6 +163,7 @@
         LOG_DIR         = '%s/%s' % (TMPDIR,logsDate)
         LOG_TMP_DIR     = '%s/tmp' % LOG_DIR
         LOG_XML_TMP_DIR = '%s/xmltmp' % LOG_DIR
+        LOCAL_TESTS_DIR = '%s/fwrk' % LOG_DIR
       </script>
       <call function="'createLogDir'"/>
       <!-- Write xml result header -->
diff --git a/opendj-sdk/opends/tests/system-tests/phases/main_run_lib.xml b/opendj-sdk/opends/tests/system-tests/phases/main_run_lib.xml
index 660c4f8..f9c1f06 100644
--- a/opendj-sdk/opends/tests/system-tests/phases/main_run_lib.xml
+++ b/opendj-sdk/opends/tests/system-tests/phases/main_run_lib.xml
@@ -106,32 +106,56 @@
         '=================== PREAMBLE  ========================='
       </message>
       
+      <!--==== Get the list of hosts for each instance ====-->
+      <script>
+        _list = []
+        _listName = []
+        for instance in instances:
+          if instance.getHost() not in _listName:
+            _listName.append(instance.getHost())
+            _list.append(instance)
+      </script>
       <!--== Do some stuff on instances machines ==-->
-      <paralleliterate in="instances" var="instance">
+      <paralleliterate in="_list" var="instance">
         <sequence>
-          <!-- Check that date/hour are synchronised beetween machines -->
-          <!-- TBD -->
-          
           <!-- Create folders on remote hosts -->
           <call function="'createFolder'">
-            { 'location'   : instance.getHost(), 
-              'foldername' : '%s' % LOG_DIR ,
+            { 'location'   : instance.getHost(),
+              'foldername' : LOG_DIR,
               'fileFd'     : NO_FILE
             }
           </call>
           <call function="'createFolder'">
-            { 'location'   : instance.getHost(), 
-              'foldername' : '%s' % LOG_TMP_DIR ,
+            { 'location'   : instance.getHost(),
+              'foldername' : LOG_TMP_DIR,
               'fileFd'     : NO_FILE
             }
           </call>
           <call function="'createFolder'">
-            { 'location'   : instance.getHost(), 
-              'foldername' : '%s' % LOG_XML_TMP_DIR ,
+            { 'location'   : instance.getHost(),
+              'foldername' : LOG_XML_TMP_DIR,
               'fileFd'     : NO_FILE
             }
           </call>
-          <!--== Get opends buildid is instance is already installed ==-->
+          <!-- Copy framework files needed to instance host -->
+          <call function="'createFolder'">
+            { 'location'   : instance.getHost(),
+              'foldername' : LOCAL_TESTS_DIR,
+              'fileFd'     : NO_FILE
+            }
+          </call>
+          <script>
+            fullHostName = '%s%s' % (instance.getHost(),DOMAIN[0])
+          </script>
+          <call function="'copyFolder'">
+            {
+              'remoteHost'    : fullHostName,
+              'fromDirectory' : '%s/phases/shared/java' % TESTS_DIR,
+              'toDirectory'   : '%s/phases/shared/java' % LOCAL_TESTS_DIR,
+              'fileFd'        : NO_FILE
+            }
+          </call>
+          <!-- Get opends buildid is instance is already installed -->
           <if expr="instance.getProduct() == 'opends'">
             <sequence>
               <import machine="'%s' % (STAF_LOCAL_HOSTNAME)"
@@ -154,28 +178,55 @@
             clients.extend(module.getClients())
       </script>
       
-      <paralleliterate in="clients" var="client">
+      <!--==== Get the list of hosts for each client ====-->
+      <script>
+        _list = []
+        _listName = []
+        for client in clients:
+          if client.getHost() not in _listName:
+            _listName.append(client.getHost())
+            _list.append(client)
+      </script>
+      <paralleliterate in="_list" var="client">
         <sequence>
           <if expr="client.getHost() != NOT_DEFINED">
             <sequence>
               <!--== Create folders on remote hosts ==-->
               <call function="'createFolder'">
-                { 'location'   : client.getHost(), 
-                  'foldername' : '%s' % LOG_DIR ,
-                  'fileFd'     : NO_FILE
-                }
+              { 'location'   : client.getHost(),
+                'foldername' : LOG_DIR,
+                'fileFd'     : NO_FILE
+              }
               </call>
               <call function="'createFolder'">
-                { 'location'   : client.getHost(), 
-                  'foldername' : '%s' % LOG_TMP_DIR ,
-                  'fileFd'     : NO_FILE
-                }
+              { 'location'   : client.getHost(),
+                'foldername' : LOG_TMP_DIR,
+                'fileFd'     : NO_FILE
+              }
               </call>
               <call function="'createFolder'">
-                { 'location'   : client.getHost(), 
-                  'foldername' : '%s' % LOG_XML_TMP_DIR ,
-                  'fileFd'     : NO_FILE
-                }
+              { 'location'   : client.getHost(),
+                'foldername' : LOG_XML_TMP_DIR,
+                'fileFd'     : NO_FILE
+              }
+              </call>
+              <!-- Copy framework files needed to instance host -->
+              <call function="'createFolder'">
+              { 'location'   : client.getHost(),
+                'foldername' : '%s/clients' % LOCAL_TESTS_DIR,
+                'fileFd'     : NO_FILE
+              }
+              </call>
+              <script>
+                fullHostName = '%s%s' % (client.getHost(),DOMAIN[0])
+              </script>
+              <call function="'copyFolder'">
+              {
+                'remoteHost'    : fullHostName,
+                'fromDirectory' : '%s/clients' % TESTS_DIR,
+                'toDirectory'   : '%s/clients' % LOCAL_TESTS_DIR,
+                'fileFd'        : NO_FILE
+              }
               </call>
             </sequence>
           </if>
diff --git a/opendj-sdk/opends/tests/system-tests/phases/scheduler/scheduler.xml b/opendj-sdk/opends/tests/system-tests/phases/scheduler/scheduler.xml
index f99008f..a4a34cc 100755
--- a/opendj-sdk/opends/tests/system-tests/phases/scheduler/scheduler.xml
+++ b/opendj-sdk/opends/tests/system-tests/phases/scheduler/scheduler.xml
@@ -77,16 +77,7 @@
             clients.extend(m.getClients())
       </script>
       
-      
-      <!--==== Copy client data into client host ====-->
-      <call function="'copyClients'">
-      { 
-        'clients'    : clients
-      }
-      </call>
-      <script>
-        MachineList = STAXResult
-      </script>
+      <!--==== Run clients only if no errors occured before   ===========-->
       <if expr="ERR_NUM[0] == 0">
         <sequence>
           <!--==== Start the system test and launch client's process ====-->
@@ -115,83 +106,6 @@
       </call>
     </sequence>
   </function>
-
-
-
-  <!-- ************************************************************ -->
-  <function name="copyClients" scope="local">
-    <function-map-args>
-      <function-arg-def name="clients" type="required">
-      </function-arg-def>
-    </function-map-args>
-    
-    <sequence>
-      <!--==========  Define variables  =========-->
-      <script>
-        fileList = STAXGlobal([])
-      </script>
-      <!--==== Get the list of hosts for each client ====-->
-      <script>
-        list = NOT_DEFINED
-        
-        # for each clients get from conf.xml file
-        for client in clients:          
-          if list == NOT_DEFINED:
-            list = '%s' % client.getHost()
-          elif list.find(client.getHost()) == -1:
-            list = '%s,%s' % (list,client.getHost())
-        
-        list = list.split(",")
-      </script>
-      <!--==========  Copy directory in parallel   ==========-->
-      <paralleliterate in="list" var="host">
-        <sequence>
-          <if expr="host != NOT_DEFINED">
-            <sequence>
-              <!--==== open logfile ====-->
-               <call function="'getLogFileName'">
-                {
-                  'type'   : 'host',
-                  'object' : host,
-                  'prefix' : 'client_copy'
-                }
-              </call>
-              <script>
-                logFile = STAXResult
-                fileList.append(logFile)
-                fileFd = open(logFile,'w')
-              </script>
-              <!--==== copy directory ====-->
-              <script>
-                fullHostName = '%s%s' % (host,DOMAIN[0])
-              </script>
-              <call function="'copyFolder'">
-                {
-                  'remoteHost'    : fullHostName,
-                  'fromDirectory' : '%s/clients' % TESTS_DIR,
-                  'toDirectory'   : '%s/clients' % LOG_DIR,
-                  'fileFd'        : fileFd
-                }
-              </call>
-              <!--==== close logfile ====-->
-              <script>
-                fileFd.close()
-                fileFd = ''
-              </script>
-            </sequence>
-          </if>
-        </sequence>
-      </paralleliterate>
-      <!--==========  Merge files    ==========-->
-      <call function="'mergeFiles'">
-        {
-          'fileList' : fileList,
-          'fileFd'   : LOG_MAIN_FD
-        }
-      </call>
-      <return>list</return>
-    </sequence>
-  </function>
   
   
   
@@ -417,7 +331,7 @@
       <script>
         timerKilled = TRUE
         clientXmlFile = '%s/clients/%s/%s.xml' % \
-                        (TESTS_DIR,client.getName(),client.getName())
+                        (LOCAL_TESTS_DIR,client.getName(),client.getName())
       </script>
       <timer duration="'%ss' % duration">
         <sequence>

--
Gitblit v1.10.0