more dev
authorUnknown Author <unknown>
Fri, 8 Aug 2008 00:32:48 +0000 (00:32 +0000)
committerUnknown Author <unknown>
Fri, 8 Aug 2008 00:32:48 +0000 (00:32 +0000)
htswdataprod/htswdataprod/automation/runner_s.py

index 08ca1c7df58932878358f0c1206fe02d31ba6e4c..21f23f88e48ef1a944eec226af8f1e9e334330c6 100644 (file)
@@ -137,29 +137,46 @@ class Runner(rpc.XmlRpcBot):
         #stderr_filepath = os.path.join(conf_info.analysis_dir,
         #                               "pipeline_configure_stderr.txt")
       
-        stdout_filepath = '/tmp/main_pipeline_script_stdout.txt'
-        stderr_filepath = '/tmp/main_pipeline_script_stderr.txt'
+        stdout_filepath = os.path.join(self.base_analysis_dir,"main_pipeline_script_stdout.txt");
+        stderr_filepath = os.path.join(self.base_analysis_dir,"main_pipeline_script_stderr.txt");
       
         fout = open(stdout_filepath, 'w')
         ferr = open(stderr_filepath, 'w')
-        
+
+        outBuffer = []        
         pipe = subprocess.Popen(['./MainPipelineScript',
-                                '%s' % (flowcell),'%s' % (os.path.join(self.base_analysis_dir,run_dir))],
-                                stdout=fout,
-                                stderr=ferr)
+                                '%s' % (flowcell),'%s' % (os.path.join(self.base_analysis_dir,run_dir)),'%s' % ('GO')],
+                                #stdout=fout,                                
+                                stderr=ferr,
+                                stdout=subprocess.PIPE) 
+                                #stdin=subprocess.PIPE)
+
       
         self.reportMsg("Attempting run at: %s" % (time.ctime()))
-        error_code = pipe.wait()
+
+        #for line in pipe.stdout:
+         # self.reportMsg("%s" % (line))
+
+
+        for line in pipe.stdout: 
+          outBuffer.append("%s" % (line))
+          if len(outBuffer)>50:
+            self.reportMsg("%s" % ("".join(outBuffer))) 
+            outBuffer = []
         
+     
+        error_code = pipe.wait()
+        self.reportMsg("%s" % ("".join(outBuffer)))        
+        outBuffer = []
         self.reportMsg("Return code is: %s" % (error_code))
       
         # Clean up
         fout.close()
         ferr.close()
 
-        fout = open(stdout_filepath, 'r')
-        self.reportMsg(fout.read())
-        fout.close()       
+        #fout = open(stdout_filepath, 'r')
+        #self.reportMsg(fout.read())
+        #fout.close()       
  
     def launchJob(self, run_dir,flowcell):
         """