diff rgToolFactory.xml @ 19:a87a262220a4

Adding proof of concept for optional output formats. Updated readme again
author ross lazarus ross.lazarus@gmail.com
date Tue, 05 Jun 2012 21:54:58 +1000
parents 8594478e8d2c
children c23e53f768ed
line wrap: on
line diff
--- a/rgToolFactory.xml	Mon Jun 04 21:32:24 2012 +1000
+++ b/rgToolFactory.xml	Tue Jun 05 21:54:58 2012 +1000
@@ -1,7 +1,7 @@
 <tool id="rgTF" name="Tool Factory" version="0.05">
   <description>Makes scripts into tools</description>
   <command interpreter="python">
-#if ( $__user_email__ not in ['rlazarus@bakeridi.edu.au','mziemann@bakeridi.edu.au','akaspi@bakeridi.edu.au'] ):
+#if ( $__user_email__ not in ['yourID@email','ross.lazarus@gmail.com'] ):
      rgToolFactory.py --bad_user $__user_email__
   #else:
     rgToolFactory.py --script_path "$runme" --interpreter "$interpreter" 
@@ -27,8 +27,8 @@
 #end if 
   </command>
   <inputs>
-    <param name="input1"  type="data"  label="Select an optional input file from your history" optional="true"
-       help="Your script probably needs an input - but if not, this can be left unassigned. Note that your script MUST be able to parse whatever format you choose!"/>
+    <param name="input1"  type="data"  label="Select an input file from your history" optional="true"
+       help="Most scripts will need an input - your script MUST be ready for whatever format you choose"/>
     <param name="tool_name" type="text" value="My dynamic script" size="80" label="Title for job outputs" help="Supply a meaningful name here to remind you what the outputs contain">
         <sanitizer>
             <valid initial="string.letters,string.digits">
@@ -50,12 +50,18 @@
                     <mapping initial="none"/>
                 </sanitizer>
             </param>
+        <param name="out_format" type="select" label="Galaxy datatype for your tool's output file" help="You may need to edit the xml to extend this list">
+        <option value="tabular" selected="true">Tabular</option>
+        <option value="interval">Interval</option>
+        <option value="gz">gz</option>
+        <option value="text">text</option>
+        </param>
         </when>
     </conditional> 
     <param name="make_HTML" type="select" label="Create an HTML report with links to all output files and thumbnail links to PDF images" 
-         help="Recommended for presenting complex outputs in an accessible manner">
-        <option value="yes">Yes</option>
-        <option value="" selected="true">No</option>
+         help="Recommended for presenting complex outputs in an accessible manner. Turn off for simple tools so they just create one output">
+        <option value="yes" selected="true">Yes</option>
+        <option value="">No</option>
     </param>   
     <param name="make_TAB" type="select" label="Create a new tabular history output" 
          help="This is useful if your script creates a single new tabular file you want to appear in the history after the tool executes">
@@ -77,14 +83,19 @@
      </param>
   </inputs>
   <outputs>
-    <data format="tabular" name="tab_file" label="${tool_name}.xls">
+    <data format="tabular" name="tab_file" label="${tool_name}.${factory.out_format}">
         <filter>make_TAB == "yes"</filter>
+        <change_format>
+            <when input="factory.out_format" value="interval"  format="interval" />
+            <when input="factory.out_format" value="gz" format="gz" />
+            <when input="factory.out_format" value="text"  format="text"  />
+         </change_format>
     </data>
     <data format="html" name="html_file" label="${tool_name}.html">
         <filter>make_HTML == "yes"</filter>
     </data>
     <data format="gz" name="new_tool" label="${tool_name}_tool.gz">
-        <filter>factory['make_Tool'] == "yes"</filter>
+        <filter>make_Tool == "yes"</filter>
     </data>
   </outputs>
 <configfiles>