diff multigps.xml @ 18:5f6b4c0fb473 draft

Uploaded
author iuc
date Tue, 04 Apr 2017 21:07:58 -0400
parents 3ea58bab5819
children b94c5e70565b
line wrap: on
line diff
--- a/multigps.xml	Tue Apr 04 19:30:00 2017 -0400
+++ b/multigps.xml	Tue Apr 04 21:07:58 2017 -0400
@@ -8,12 +8,12 @@
     </requirements>
     <command detect_errors="aggressive">
         <![CDATA[
-            #set design_file = '$build_design_file'
             #set output_dir = $output_html.files_path
             mkdir -p $output_dir &&
+            python '$build_design_file' '$inputs' &&
             multigps
             ## General options
-            --design '$design_file'
+            --design 'design.tabular'
             ## Append .txt extensions to events hrefs
             ## in output dataset so files will render
             ## in the browser.
@@ -156,37 +156,39 @@
     <configfiles>
         <configfile name="build_design_file">
 <![CDATA[
-#for $cond_i, $condition_items in enumerate($condition_repeat):
-    #for $signal_items in $condition_items['signal_repeat']:
-        #set signal = $signal_items['signal']
-        #set replicate_name = $signal_items['replicate_name']
-        #set experiment_type = $signal['experiment_type']
-        #set line = str($signal) + '\t' + 'Signal' + '\t' + str($signal.ext.upper()) + '\t' + str($cond_i) + '\t' + str($replicate_name) + '\t' + str($experiment_type)
-        #set fixedreadcount_cond = $signal_items['fixedreadcount_cond']
-        #set fixedreadcount_select = $fixedreadcount_cond['fixedreadcount_select']
-        #if str($fixedreadcount_select) == 'yes':
-            #set line = $line + '\t' + str($fixedreadcount_cond['fixedreadcount'])
-        #end if
-        $line
-    #end for
-    #for $control_items in condition_items['control_repeat']:
-        #set control = $control_items['control']
-        #set experiment_type = $control_items['experiment_type']
-        #set line = str($control_items) + '\t' + 'Control' + '\t' + str($control.ext.upper()) + '\t' + str($cond_i)
-        #set specify_replicate_name_cond = $control_items['specify_replicate_name_cond']
-        #set specify_replicate_name = $specify_replicate_name_cond['specify_replicate_name']
-        #if str($specify_replicate_name) == 'yes':
-            #set line = $line + '\t' + str($specify_replicate_name_cond['replicate_name'])
-        #end if
-        #set line = $line + '\t' + str($experiment_type)
-        #set fixedreadcount_cond = $control_items['fixedreadcount_cond']
-        #set fixedreadcount_select = $fixedreadcount_cond['fixedreadcount_select']
-        #if str($fixedreadcount_select) == 'yes':
-            #set line = $line + '\t' + str($fixedreadcount_cond['fixedreadcount'])
-        #end if
-        $line
-    #end for
-#end for
+import json
+
+inputs = sys.argv[1]
+params = json.load(open(inputs, 'r'))
+condition_repeat = params['condition_repeat']
+fh = open('design.tabular', 'w')
+
+for cond_i, condition_items in enumerate(condition_repeat):
+    for signal_items in condition_items['signal_repeat']:
+        signal = signal_items['signal']
+        replicate_name = signal_items['replicate_name']
+        experiment_type = signal['experiment_type']
+        line_items = [signal, 'Signal', signal.ext.upper(), cond_i, replicate_name, experiment_type]
+        fixedreadcount_cond = signal_items['fixedreadcount_cond']
+        fixedreadcount_select = fixedreadcount_cond['fixedreadcount_select']
+        if fixedreadcount_select == 'yes':
+            line_items.append(fixedreadcount_cond['fixedreadcount'])
+        fh.write('%s\n' % '\t'.join(line_items)
+    for control_items in condition_items['control_repeat']:
+        control = control_items['control']
+        experiment_type = control_items['experiment_type']
+        line_items = [control, 'Control', control.ext.upper(), cond_i]
+        specify_replicate_name_cond = control_items['specify_replicate_name_cond']
+        specify_replicate_name = specify_replicate_name_cond['specify_replicate_name']
+        if specify_replicate_name == 'yes':
+            line_items.append(specify_replicate_name_cond['replicate_name'])
+        line_items.append(experiment_type)
+        fixedreadcount_cond = control_items['fixedreadcount_cond']
+        fixedreadcount_select = fixedreadcount_cond['fixedreadcount_select']
+        if fixedreadcount_select) == 'yes':
+            line_items.append(fixedreadcount_cond['fixedreadcount'])
+        fh.write('%s\n' % '\t'.join(line_items)
+fh.close()
 ]]>
         </configfile>
     </configfiles>