annotate toolfactory/rgToolFactory2.xml @ 34:5052ac89c036 draft

fix to argparse xml
author fubar
date Sat, 08 Aug 2020 06:06:45 -0400
parents 4d578c8c1613
children ce2b1f8ea68d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
1 <tool id="rgTF2" name="toolfactory" version="2.00">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
2 <description>Scripts into tools</description>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
3 <macros>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
4 <xml name="io">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
5 <repeat name="history_inputs" title="Add a data file from your history to pass in to the script. Use the '+' button as needed"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
6 help="USE SMALL SAMPLES because these will be used for the new tool's test. The names will become a history item selector as input for users of the new tool you are making">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
7 <param name="input_files" type="data" format="data" label="Select an input file from your history" optional="true" size="120" multiple="false"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
8 help=""/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
9 <param name="input_formats" type="select" multiple="true" label="Select the datatype(s) that your tool/script accepts as input"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
10 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
11 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
12 <column name="value" index="0"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
13 </options>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
14 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
15 <param name="input_label" type="text" value="" label="This will become the user prompt for the form so please make it informative" size="60"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
16 help="Note that '~~~' is an internal delimiter so must not appear in this text field - please work around this technical limitation" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
17 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
18 <valid initial="string.printable"> <remove value='~~~'/> </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
19 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
20 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
21 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
22 <param name="input_help" type="text" value="parameter_help" label="This will become help text on the form."
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
23 help="Note that three consecutive ~ cannot be used in this text field - please work around this technical limitation" size="60">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
24 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
25 <valid initial="string.printable"> <remove value='~~~'/> </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
26 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
27 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
28 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
29 <param name="input_CL" type="text" size="60" label="Positional: ordinal integer. Argparse: argument name."
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
30 help="If you will pass positional parameters, enter the integer ordinal for this parameter. If Argparse style, '--' will be prepended or '-' if single character" value="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
31 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
32 </repeat>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
33 <repeat name="history_outputs" title="Add a tool run output file to the user's history from your tool - Use the '+' button to add as many as needed"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
34 help="The name will become a history item for users of the new tool you are making containing one of it's outputs">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
35 <param name="history_name" type="text" label="Name for this output to appear in new history" optional="false" size="120"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
36 help=""/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
37 <param name="history_format" type="select" multiple="false" label="Select the datatype for this output"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
38 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
39 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
40 <column name="value" index="0"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
41 </options>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
42 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
43 <param name="history_CL" type="text" size="60" label="Positional: ordinal integer. Argparse: argument name expected for this output parameter"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
44 help="If positional parameters, enter the integer ordinal expected for this parameter. If Argparse style, '--' will be prepended or '-' if single character" value="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
45 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
46 </repeat>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
47 </xml>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
48 <xml name="additparam">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
49 <param name="edit_params" type="select" display="radio" label="Add any additional parameters to the generated tool form so they are user editable?"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
50 help="If no (default), users will NOT be able to alter any additional parameters. If yes, these will appear on the tool form as text fields with no validation or sanitizing">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
51 <option value="yes">Yes, allow user to edit all additional parameters on the generated tool form</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
52 <option value="no" selected="true">No - use the fixed values for all additional parameters - no user editing</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
53 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
54
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
55 <repeat name="additional_parameters" title="Pass additional parameters to the script"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
56 help="See examples below to see how these can be parsed by scripts in the various languages">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
57 <param name="param_name" type="text" value="parameter_name" label="Choose the name for this parameter" size="60">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
58 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
59 <valid initial="string.letters,string.digits"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
60 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
61 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
62 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
63 <param name="param_type" type="select" label="Select the type for this parameter">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
64 <option value="text" selected="true">text</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
65 <option value="integer">integer</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
66 <option value="float">float</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
67 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
68 <param name="param_value" type="text" value="" label="Enter this parameter's default value" size="60"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
69 help="Note that '~~~' is an internal delimiter must not appear in this text field - please work around this technical limitation" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
70 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
71 <valid initial="string.printable"> <remove value='~~~'/> </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
72 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
73 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
74 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
75 <param name="param_label" type="text" value="parameter_label" label="Enter this parameter's label for the form" size="60"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
76 help="Note that '~~~' is an internal delimiter so must not appear in this text field - please work around this technical limitation" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
77 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
78 <valid initial="string.printable"> <remove value='~~~'/> </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
79 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
80 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
81 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
82 <param name="param_help" type="text" value="parameter_help" label="Help for this parameter"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
83 help="Note that three consecutive ~ cannot be used in this text field - please work around this technical limitation" size="60">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
84 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
85 <valid initial="string.printable"> <remove value='~~~'/> </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
86 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
87 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
88 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
89 <param name="param_CL" type="text" size="60" label="Positional order (must be integer > 1) or Argument name to be prefixed with '--' or '-' if single letter"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
90 help="Using positional parameters, enter the integer ordinal for this parameter on the command line. Using Argparse style, '--' will be prepended on the CL" value="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
91 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
92 </repeat>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
93 </xml>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
94 <xml name="builtin_dynpar">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
95 <param name="interpreter_version" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
96 label="Specific interpreter version to match dependency (Conda) repositories - e.g. for python '3.8.5' Latest if empty"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
97 <param name="exe_package_version" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
98 label="Executable package version to match dependency (Conda) repositories - e.g. for bwa='0.7.17'. Latest if empty"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
99 <param name="dynScript" label="Cut and paste the script to be executed here" type="text" value="Script goes here" area="True"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
100 help="If there are parameters, either positional or argparse style, the script must parse and use them appropriately">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
101 <sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
102 <valid initial="string.printable">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
103 </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
104 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
105 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
106 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
107 </xml>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
108 <xml name="dynpar">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
109 <param name="interpreter_version" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
110 label="Specific interpreter version to match dependency (Conda) repositories - e.g. for python '3.8.5' Latest if empty"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
111 <param name="exe_package_version" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
112 label="Executable package version to match dependency (Conda) repositories - e.g. for bwa='0.7.17'. Latest if empty"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
113 <param name="dynScript" label="Cut and paste the script to be executed here" type="text" value="Script goes here" area="True"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
114 help="If there are parameters, either positional or argparse style, the script must parse and use them appropriately">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
115 <sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
116 <valid initial="string.printable">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
117 </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
118 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
119 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
120 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
121 </xml>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
122 </macros>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
123 <requirements>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
124 <requirement type="package">python</requirement>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
125 </requirements>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
126 <command interpreter="python"><![CDATA[
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
127 #import os
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
128 #set dev_env = os.environ.get('GALAXY_DEVELOPMENT_ENVIRONMENT', '0') == '1'
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
129 #if not $dev_env and ( $__user_email__ not in $__admin_users__ ):
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
130 $__tool_directory__/rgToolFactory2.py --bad_user $__user_email__
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
131 #else:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
132 $__tool_directory__/rgToolFactory2.py
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
133 --runmode "$interexe.interpreter"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
134 #if str($interexe.interpreter)=="Executable" or str($interexe.interpreter)=="system":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
135 --exe_package="$interexe.exe_package"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
136 #if str($interexe.exe_package_version) != 'None' :
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
137 --exe_package_version="$interexe.exe_package_version"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
138 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
139 #else:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
140 --interpreter_name="$interexe.interpreter" --script_path "$runme"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
141 #if str($interexe.interpreter_version) != 'None':
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
142 --interpreter_version="$interexe.interpreter_version"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
143 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
144 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
145 --tool_name="$tool_name" --user_email="$__user_email__" --citations="$citeme" --parampass="$ppass.parampass"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
146 #if str($makeMode.make_Tool)=="yes":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
147 --make_Tool="$makeMode.make_Tool"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
148 --tool_desc="$makeMode.tool_desc"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
149 --tool_version="$makeMode.tool_version"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
150 --help_text="$helpme"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
151 --new_tool="$new_tool"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
152 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
153 #if $ppass.parampass != '0':
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
154 #if str($ppass.edit_params) == "yes":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
155 --edit_additional_parameters
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
156 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
157 #for apar in $ppass.additional_parameters:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
158 --additional_parameters="$apar.param_name~~~$apar.param_value~~~$apar.param_label~~~$apar.param_help~~~$apar.param_type~~~$apar.param_CL"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
159 #end for
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
160 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
161
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
162 #for $intab in $ppass.history_inputs:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
163 --input_files="$intab.input_files~~~$intab.input_CL~~~$intab.input_formats~~~$intab.input_label~~~$intab.input_help"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
164 #end for
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
165
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
166
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
167 #for $otab in $ppass.history_outputs:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
168 --output_files "$otab.history_name~~~$otab.history_format~~~$otab.history_CL"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
169 #end for
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
170 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
171 ]]></command>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
172 <configfiles>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
173 <configfile name="runme">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
174
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
175 #if $interexe.interpreter != "Executable" and $interexe.interpreter != "system" :
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
176 ${interexe.dynScript}
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
177 #else:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
178 $tool_name
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
179 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
180 </configfile>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
181 <configfile name="helpme">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
182 #if $makeMode.make_Tool == "yes":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
183 ${makeMode.help_text}
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
184 #else
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
185 $tool_name help goes here
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
186 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
187 </configfile>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
188 <configfile name="citeme">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
189 #if $makeMode.make_Tool == "yes":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
190 #for $citation in $makeMode.citations:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
191 #if $citation.citation_type.type == "bibtex":
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
192 **ENTRY**bibtex
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
193 ${citation.citation_type.bibtex}
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
194 #else
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
195 **ENTRY**doi
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
196 ${citation.citation_type.doi}
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
197 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
198 #end for
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
199 #end if
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
200 </configfile>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
201 </configfiles>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
202 <inputs>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
203
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
204 <param name="tool_name" type="text" value="tool1" label="New tool ID and title for outputs" size="60"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
205 help="This will become the toolshed repository name so choose thoughtfully to avoid namespace clashes with other tool writers. lower case, digits and underscores only">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
206 <sanitizer invalid_char="">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
207 <valid initial="string.letters,string.digits">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
208 <add value="_"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
209 </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
210 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
211 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
212 <conditional name="interexe">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
213 <param name="interpreter" type="select" label="For binaries, choose 'Executable'. Otherwise choose the interpreter for your code"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
214 help = "If executable, the supplied package will become a requirement so must match the tool dependency resolver package name - conda is the default.">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
215 <option value="Executable" selected="true">An executable binary to be provided and managed by the Conda dependency management subsystem</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
216 <option value="python">python</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
217 <option value="r-base">Rscript</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
218 <option value="perl">perl</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
219 <option value="bash">bash</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
220 <option value="sh">sh</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
221 <option value="system" >A system executable found on the path such as awk/sed</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
222 <option value="specialtestcaseinterpreterpython" >for testing only - do not use me please</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
223 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
224 <when value="Executable">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
225 <param name="exe_package" type="text" value="" label="Executable package name in dependency (Conda) repositories - e.g. 'bwa'" size="60" optional="false"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
226 <param name="exe_package_version" type="text" value="" label="Executable package version to match dependency (Conda) repositories - e.g. for bwa='0.7.17'. Latest if empty" size="60"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
227 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
228 <when value="system">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
229 <param name="exe_package" type="text" value="" label="System executable to run" size="60" optional="false"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
230 <param name="exe_package_version" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
231 label="Executable package version to match dependency (Conda) repositories - e.g. for bwa='0.7.17'. Latest if empty"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
232 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
233 <when value = "python">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
234 <expand macro="dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
235 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
236 <when value = "r-base">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
237 <expand macro="dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
238 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
239 <when value = "perl">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
240 <expand macro="dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
241 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
242 <when value = "bash">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
243 <expand macro="builtin_dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
244 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
245 <when value = "sh">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
246 <expand macro="builtin_dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
247 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
248 <when value = "specialtestcaseinterpreterpython">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
249 <expand macro="builtin_dynpar" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
250 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
251 </conditional>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
252 <conditional name = "ppass">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
253
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
254 <param name="parampass" type="select" display="radio" label="Command line parameter passing method to use">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
255 <option value="argparse" selected="true">Argparse style: on CL in the form of --inputbam="foo.bam" if label below is "inputbam"</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
256 <option value="positional">Positional: on CL in the order defined on this screen -> "... foo.bam bar.idx zot.xls"</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
257 <option value="0">No parameters needed because tool reads selected history file from STDIN and writes to STDOUT for history"</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
258 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
259 <when value = "argparse">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
260 <expand macro="io" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
261 <expand macro="additparam" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
262 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
263 <when value = "positional">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
264 <expand macro="io" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
265 <expand macro="additparam" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
266 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
267 <when value = "0">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
268 <expand macro="io"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
269 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
270 </conditional>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
271 <conditional name="makeMode">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
272 <param name="make_Tool" type="select" display="radio" label="Generate new tool as a tar.gz file ready to upload to a toolshed repository"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
273 help="Generate a toolshed archive - upload to a toolshed from where it can be auto-installed via the Galaxy admin functions"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
274 size="60">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
275 <option value="yes">Generate a Galaxy ToolShed compatible toolshed.gz</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
276 <option value="" selected="true">No. Just run the script please</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
277 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
278 <when value = "yes">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
279 <param name="tool_version" label="Tool Version - bump this to warn users trying to redo old analyses" type="text" value="0.01"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
280 help="If you change your script and regenerate the 'same' tool, you should inform Galaxy (and users) by changing (bumping is traditional) this number"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
281 <param name="tool_desc" label="Tool Description" type="text" value="" size="40"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
282 help="Supply a brief tool description for the Galaxy tool menu entry (optional - appears after the tool name)" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
283 <param name="help_text" label="Tool form documentation and help text for users" type="text" area="true"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
284 size="8x120" value="**What it Does**"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
285 help="Supply the brief user documentation to appear on the new tool form as reStructured text - http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
286 <sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
287 <valid initial="string.printable">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
288 </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
289 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
290 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
291 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
292 <repeat name="citations" title="Citation">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
293 <conditional name="citation_type">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
294 <param name="type" type="select" display="radio" label="Citation Type">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
295 <option value="doi">DOI</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
296 <option value="bibtex">BibTeX</option>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
297 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
298 <when value="doi">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
299 <param name="doi" label="DOI" type="text" value=""
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
300 help="Supply a DOI (e.g. doi: 10.1111/j.1740-9713.2007.00258.x) that should be cited when this tool is used in published research." />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
301 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
302 <when value="bibtex">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
303 <param name="bibtex" label="BibTex" type="text" area="true" size="8x120"
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
304 help="Supply a BibTex entry that should be cited when this tool is used in published research." value="" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
305 <sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
306 <valid initial="string.printable">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
307 </valid>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
308 <mapping initial="none"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
309 </sanitizer>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
310 </param>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
311 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
312 </conditional>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
313 </repeat>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
314 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
315 <when value = "">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
316 </when>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
317 </conditional>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
318 </inputs>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
319 <outputs>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
320 <collection name="ToolFactory_Outputs" type="list" label="Toolfactory ${tool_name} test run outputs" >
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
321 <discover_datasets pattern="__name__" directory="tfout/test-data" format="txt"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
322 </collection>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
323 <data format="tgz" name="new_tool" label="${tool_name}_toolshed.tgz">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
324 <filter>makeMode['make_Tool'] == "yes"</filter>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
325 </data>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
326 </outputs>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
327 <tests>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
328 <test>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
329 <param name="input_files" value="input1_sample" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
330 <param name="input_CL" value="1" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
331 <param name="input_formats" value="txt" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
332 <param name="input_label" value="input" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
333 <param name="input_help" value="help" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
334 <param name="tool_name" value="pyrevpos" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
335 <param name="parampass" value="positional" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
336 <param name="make_Tool" value="yes" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
337 <param name="tool_version" value="0.01" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
338 <param name="tool_desc" value="positional reverse" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
339 <param name="help_text" value="help text goes here" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
340 <param name="interpreter" value="python"/>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
341 <param name="history_name" value="output2_sample" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
342 <param name="history_format" value="txt" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
343 <param name="history_CL" value="2" />
32
4d578c8c1613 passes planemo test
fubar
parents: 30
diff changeset
344 <param name="dynScript" value="import sys; inp = sys.argv[1]; outp = sys.argv[2]; inlist = open(inp,'r').readlines(); o = open(outp,'w'); rs = [''.join(list(reversed(x.rstrip()))) for x in inlist]; o.write('\n'.join(rs)); o.close()"/>
30
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
345 <output_collection name="ToolFactory_Outputs" type="list">
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
346 <element name="output2_sample_sample" file="output2_sample" ftype="txt" compare="diff" lines_diff = "10" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
347 </output_collection>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
348 <output name="new_tool" file="toolfactory_pyrevpos_tgz_sample" compare="sim_size" delta="6000" />
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
349 </test>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
350 </tests>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
351 <help>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
352
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
353 .. class:: warningmark
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
354
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
355 **Details and attribution**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
356 (see GTF_)
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
357
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
358 **Local Admins ONLY**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
359 Only users whose IDs found in the local admin_user configuration setting in universe_wsgi.ini can run this tool.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
360
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
361 **If you find a bug**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
362 Please raise an issue, or even better, submit a pull request fixing it, on the github repository GTF_
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
363
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
364 **What it does**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
365 This tool optionally generates normal workflow compatible first class Galaxy tools
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
366
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
367 Generated tools can run existing binary packages that become requirements, existing scripts, or new scripts pasted into this tool form.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
368 Pasted scripts are written so they are part of the new tool and cannot be adjusted by the downstream user.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
369 Binary packages are managed by the dependency subsystem - conda usually, so anything in bioconda or conda_forge is available for example.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
370
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
371 Any number of parameters can be built into the new tool form for passing in to the script or executable at runtime.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
372 These can be editable by the downstream user or baked in.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
373
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
374 When you run this tool, your executable or script and supplied parameter values will be run to produce a canonical
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
375 set of outputs - these are used to construct a test for the new tool.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
376
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
377 If tool generation is required, a new tarball compatible with any Galaxy toolshed is created.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
378 It can be unpacked in your galaxy/tools directory and manually added to tool_conf.xml, or
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
379 installed into any toolshed from where it can be installed into your Galaxy.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
380
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
381
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
382 .. class:: warningmark
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
383
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
384 **Note to system administrators**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
385 This tool offers *NO* built in protection against malicious scripts. It should only be installed on private/personnal Galaxy instances.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
386 Admin_users will have the power to do anything they want as the Galaxy user if you install this tool.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
387
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
388 .. class:: warningmark
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
389
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
390 **Use on public servers** is STRONGLY discouraged for obvious reasons
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
391
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
392 The tools generated by this tool will run just as securely as any other normal installed Galaxy tool but like any other new tools, should always be checked carefully before installation.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
393 We recommend that you follow the good code hygiene practices associated with safe toolshed practices.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
394
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
395 Here's a sample python script that can be cut and pasted into the tool form, suitable for positional parameter passing:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
396
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
397 ::
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
398
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
399 # reverse order of text by row
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
400 import sys
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
401 inp = sys.argv[1]
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
402 outp = sys.argv[2]
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
403 i = open(inp,'r').readlines()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
404 o = open(outp,'w')
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
405 for row in i:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
406 rs = row.rstrip()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
407 rs = list(rs)
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
408 rs.reverse()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
409 o.write(''.join(rs))
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
410 o.write('\n')
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
411 o.close()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
412
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
413 With argparse style parameters:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
414
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
415 ::
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
416
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
417 # reverse order of text by row
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
418 import argparse
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
419 parser = argparse.ArgumentParser()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
420 a = parser.add_argument
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
421 a('--infile',default='')
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
422 a('--outfile',default=None)
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
423 args = parser.parse_args()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
424 inp = args.infile
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
425 outp = args.outfile
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
426 i = open(inp,'r').readlines()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
427 o = open(outp,'w')
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
428 for row in i:
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
429 rs = row.rstrip()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
430 rs = list(rs)
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
431 rs.reverse()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
432 o.write(''.join(rs))
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
433 o.write('\n')
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
434 o.close()
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
435
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
436
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
437 Paper_ :
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
438
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
439 Creating re-usable tools from scripts: The Galaxy Tool Factory
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
440 Ross Lazarus; Antony Kaspi; Mark Ziemann; The Galaxy Team
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
441 Bioinformatics 2012; doi: 10.1093/bioinformatics/bts573
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
442
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
443 **Licensing**
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
444
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
445 Copyright Ross Lazarus (ross period lazarus at gmail period com) May 2012
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
446 All rights reserved.
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
447 Licensed under the LGPL_
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
448
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
449 .. _LGPL: http://www.gnu.org/copyleft/lesser.html
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
450 .. _GTF: https://github.com/fubar2/toolfactory
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
451 .. _Paper: http://bioinformatics.oxfordjournals.org/cgi/reprint/bts573
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
452
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
453
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
454 </help>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
455 <citations>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
456 <citation type="doi">10.1093/bioinformatics/bts573</citation>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
457 </citations>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
458 </tool>
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
459
6f48315c32c1 Uploaded
fubar
parents:
diff changeset
460