You are using literal strings for the standard output file name, instead 
of referencing the variable names you have defined.  Also note that in the 
paralleliterate, the machName variable will already contain the current 
index (so you don't need the [i].

So instead of:

<stdout>'/sangram/test + machName[i])'</stdout>

You should use something like:

<stdout>'/sangram/test%s' % machName</stdout>

The same changes need to be made to the <request> for copying the file.

David Bender
STAF/STAX Development
(512-286-5315)
IBM Austin Bldg. 903-5B002
Internet: bda...@us.ibm.com




Sangram Bakshi <san...@gmail.com> 
03/10/2009 04:56 AM

To
staf-users@lists.sourceforge.net
cc

Subject
[staf-users] Create Different Output file when run test parallely       in 
different platforms.






Hi ,
 
I am trying to run a test parallely on different machine and then store 
the output file in the client machines.
I want to store the file with different names as per machine ip address. 
After that i am trying to copy the output file 
stored in the different client machines into the management machine from 
where i am trying to run the tests.
 
I am not able to do so as i am not able to create an output files with 
different names. Kindly give some pointers.
 
 
 
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "C:\STAF\stax.dtd">
<stax>
<!--
-->
<script>
  
  from com.ibm.staf import STAFUtil
  action ='/acunix/utilities/quick_sanity/do_sanity.sh'
  build_path='/work/nightly_build'
  acversion='R12'
  qash_path='/acunix/work/QA/QASH'
  dir_name_source='/sangram/test.out'
  store_dir ='/sangram'
  dir_name_dest='C:/STAF/stax_jobs'
  machName = '155.35.7.24'
  machList = ['155.35.7.24','155.35.3.79']
  gPingFailList = STAXGlobal([])
 </script>
<defaultcall function="Main"/>
<function name="Main">
<sequence>
   <stafcmd name="'Delaying for 30 seconds  AAAAAAAA'">
                <location>machName</location>
                <service>'delay'</service>
                <request>'delay 30000'</request>
   </stafcmd>
<paralleliterate var="machName" in="machList" indexvar="i">
   <process name="'Starting Quick Sanity Testing .....'">
        <location>machName</location>
        <command mode="'shell'">'%s %s %s %s' % (action, build_path, 
qash_path, acversion) </command>
        <stdout>'/sangram/test + machName[i])'</stdout>
   </process>
 </paralleliterate>

<if expr="RC ==0">
  <sequence>
      <stafcmd name="'Delaying Sangram for 30 seconds  AAAAAAAA'">
                <location>machName</location>
                <service>'delay'</service>
                <request>'delay 30000'</request>
      </stafcmd>
<paralleliterate var="machName" in="machList" indexvar="i"> 
    <stafcmd name ="'Start Copying Quick Sanity Report from remote machine 
..... '">
         <location>machName</location>
         <service>'FS'</service>
         <request>'COPY FILE /sangram/test +machName[i]  TODIRECTORY 
c:/STAF/stax_jobs'</request>
     </stafcmd>
</paralleliterate> 
      <if expr="RC == 0"> 
         <message log="1">'FS COPY Succeeded!!!! - RC: %s, Result: %s' % 
(RC, STAFResult)</message> 
      </if> 
       
      <if expr="RC != 0"> 
         <message log="1">'FS COPY failed - RC: %s, Result: %s' % (RC, 
STAFResult)</message> 
      </if> 
 
  </sequence>
</if>
 <if expr="RC !=0">
  <sequence>
      <message>'RC: %s result: %s' % (RC, STAFResult)</message>
  </sequence>
  
</if>
</sequence>
</function>
</stax>
------------------------------------------------------------------------------
_______________________________________________
staf-users mailing list
staf-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/staf-users

------------------------------------------------------------------------------
_______________________________________________
staf-users mailing list
staf-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/staf-users

Reply via email to