annotate toolfactory/ToolFactory.xml @ 4:2a46da701dde draft

Uploaded
author fubar
date Mon, 26 Apr 2021 05:25:26 +0000
parents
children e2c8c2fa192d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
2a46da701dde Uploaded
fubar
parents:
diff changeset
1 <tool id="rgtf2" name="toolfactory" version="2.00" profile="16.04" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
2 <description>Scripts into tools v2.0</description>
2a46da701dde Uploaded
fubar
parents:
diff changeset
3 <macros>
2a46da701dde Uploaded
fubar
parents:
diff changeset
4 <xml name="singleText">
2a46da701dde Uploaded
fubar
parents:
diff changeset
5 <param name="param_value" type="text" value="" label="Enter this parameter's default text value">
2a46da701dde Uploaded
fubar
parents:
diff changeset
6 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
7 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
8 <xml name="singleInt">
2a46da701dde Uploaded
fubar
parents:
diff changeset
9 <param name="param_value" type="integer" value="" label="Enter this parameter's default integer value" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
10 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
11 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
12 <xml name="singleFloat">
2a46da701dde Uploaded
fubar
parents:
diff changeset
13 <param name="param_value" type="float" value="" label="Enter this parameter's default value">
2a46da701dde Uploaded
fubar
parents:
diff changeset
14 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
15 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
16 <xml name="singleBoolean">
2a46da701dde Uploaded
fubar
parents:
diff changeset
17 <param name="param_value" type="boolean" value="" label="Enter this parameter's default value" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
18 <param name="truevalue" type="text" value="True" label="Command line value to emit when True" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
19 <param name="falsevalue" type="boolean" value="True" label="Command line value to emit when False" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
20 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
21 <xml name="selectText">
2a46da701dde Uploaded
fubar
parents:
diff changeset
22 <repeat name="selectTexts" title="Add each option to be presented in a text select box" min="2" default="2"
2a46da701dde Uploaded
fubar
parents:
diff changeset
23 help="Each text added here will also have a value to be emitted on the command line when the text is chosen">
2a46da701dde Uploaded
fubar
parents:
diff changeset
24 <param name="select_text" type="text" value="" label="Enter the explanatory text the user will see for this choice" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
25 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
26 <param name="select_value" type="text" value="" label="Enter the value for the command line when the user selects this option">
2a46da701dde Uploaded
fubar
parents:
diff changeset
27 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
28 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
29 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
30 <xml name="tool_metadata">
2a46da701dde Uploaded
fubar
parents:
diff changeset
31 <param name="tool_version" label="Tool Version - bump this to warn users trying to redo old analyses" type="text" value="0.01"
2a46da701dde Uploaded
fubar
parents:
diff changeset
32 help="If you change your script and regenerate the 'same' tool, you should inform Galaxy (and users) by changing (bumping is traditional) this number"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
33 <param name="tool_desc" label="Tool Synopsis" type="text" value=""
2a46da701dde Uploaded
fubar
parents:
diff changeset
34 help="Supply a brief tool description for the Galaxy tool menu entry" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
35 <param name="install" label="Attempt to install in the host Galaxy"
2a46da701dde Uploaded
fubar
parents:
diff changeset
36 help="This will fail unless running in a very unusual configuration such as a specialised Docker container"
2a46da701dde Uploaded
fubar
parents:
diff changeset
37 type="boolean" checked="True" truevalue="1" falsevalue="0" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
38 <conditional name="do_test">
2a46da701dde Uploaded
fubar
parents:
diff changeset
39 <param name="run_test" label="Run planemo test on the new archive to add test outputs making a proper tool - takes time"
2a46da701dde Uploaded
fubar
parents:
diff changeset
40 help="Archives must be run and updated using planemo to populate all the test outputs. Will be very quick if no dependencies (eg a bash script). May take a very long time depending on dependencies"
2a46da701dde Uploaded
fubar
parents:
diff changeset
41 type="boolean" checked="False" truevalue="1" falsevalue="0" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
42 <when value="0">
2a46da701dde Uploaded
fubar
parents:
diff changeset
43 <param name="tail" type="hidden" value="not_tested"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
44 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
45 <when value="1">
2a46da701dde Uploaded
fubar
parents:
diff changeset
46 <param name="tail" type="hidden" value="tested"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
47 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
48 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
49 <param name="help_text" label="Tool form documentation and help text for users" type="text" area="true"
2a46da701dde Uploaded
fubar
parents:
diff changeset
50 value="**What it Does**"
2a46da701dde Uploaded
fubar
parents:
diff changeset
51 help="Supply user documentation to appear on the new tool form as reStructured text - http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
52 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
53 <valid initial="string.printable" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
54 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
55 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
56 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
57 <repeat name="citations" title="Citation">
2a46da701dde Uploaded
fubar
parents:
diff changeset
58 <conditional name="citation_type">
2a46da701dde Uploaded
fubar
parents:
diff changeset
59 <param name="type" type="select" display="radio" label="Citation Type">
2a46da701dde Uploaded
fubar
parents:
diff changeset
60 <option value="doi">DOI</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
61 <option value="bibtex">BibTeX</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
62 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
63 <when value="doi">
2a46da701dde Uploaded
fubar
parents:
diff changeset
64 <param name="doi" label="DOI" type="text" value=""
2a46da701dde Uploaded
fubar
parents:
diff changeset
65 help="Supply a DOI (e.g. doi: 10.1111/j.1740-9713.2007.00258.x) to be cited when this tool is used in published research." />
2a46da701dde Uploaded
fubar
parents:
diff changeset
66 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
67 <when value="bibtex">
2a46da701dde Uploaded
fubar
parents:
diff changeset
68 <param name="bibtex" label="BibTex" type="text" area="true"
2a46da701dde Uploaded
fubar
parents:
diff changeset
69 help="Supply a BibTex entry that should be cited when this tool is used in published research." value="" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
70 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
71 <valid initial="string.printable" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
72 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
73 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
74 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
75 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
76 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
77 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
78 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
79 <xml name="io">
2a46da701dde Uploaded
fubar
parents:
diff changeset
80 <section name="io" title="Input and output files" expanded="true">
2a46da701dde Uploaded
fubar
parents:
diff changeset
81 <repeat name="history_inputs" title="Inputs" min="0"
2a46da701dde Uploaded
fubar
parents:
diff changeset
82 help="Input data files to pass on the command line to the executable. USE SMALL SAMPLES for the new tool's test. Prompts will form a history item selector as input for users of this new tool">
2a46da701dde Uploaded
fubar
parents:
diff changeset
83 <param name="input_files" type="data" format="data" label="Select an input file from your history" multiple="false"
2a46da701dde Uploaded
fubar
parents:
diff changeset
84 help=""/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
85 <param name="input_formats" type="select" multiple="true" label="Select the datatype(s) that your tool/script accepts as input"
2a46da701dde Uploaded
fubar
parents:
diff changeset
86 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
2a46da701dde Uploaded
fubar
parents:
diff changeset
87 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
2a46da701dde Uploaded
fubar
parents:
diff changeset
88 <column name="value" index="0"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
89 </options>
2a46da701dde Uploaded
fubar
parents:
diff changeset
90 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
91 <param name="input_label" type="text" value="" label="This will become the user prompt for the form so please make it informative" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
92 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
93 <param name="input_help" type="text" value="" label="This will become help text on the form." >
2a46da701dde Uploaded
fubar
parents:
diff changeset
94 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
95 <param name="input_CL" type="text" label="Positional: ordinal integer. Argparse: argument name. STDIN if the executable/script expects it"
2a46da701dde Uploaded
fubar
parents:
diff changeset
96 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="">
2a46da701dde Uploaded
fubar
parents:
diff changeset
97 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
98 <param name="input_repeat" type="boolean" checked="False" truevalue="1" falsevalue="0" label="Allow user to repeat this input as many times as wanted - script/executable must parse these."/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
99 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
100 <repeat name="history_outputs" min="0" title="Outputs"
2a46da701dde Uploaded
fubar
parents:
diff changeset
101 help="New history items output by the executable to appear in the user history after the tool runs. The name will become a history item for users of the new tool you are making containing one of it's outputs">
2a46da701dde Uploaded
fubar
parents:
diff changeset
102 <param name="history_name" type="text" label="Output Name" optional="false"
2a46da701dde Uploaded
fubar
parents:
diff changeset
103 help="Name used for this output in history. No spaces! Argparse will also use this name as --[name]">
2a46da701dde Uploaded
fubar
parents:
diff changeset
104 <sanitizer invalid_char=" ">
2a46da701dde Uploaded
fubar
parents:
diff changeset
105 <valid initial="string.ascii_letters,string.digits" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
106 <add value="_" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
107 </valid>
2a46da701dde Uploaded
fubar
parents:
diff changeset
108 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
109 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
110 <param name="history_format" type="select" multiple="false" label="Select the datatype for this output"
2a46da701dde Uploaded
fubar
parents:
diff changeset
111 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
2a46da701dde Uploaded
fubar
parents:
diff changeset
112 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
2a46da701dde Uploaded
fubar
parents:
diff changeset
113 <column name="value" index="0"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
114 </options>
2a46da701dde Uploaded
fubar
parents:
diff changeset
115 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
116 <param name="history_CL" type="text" label="Position"
2a46da701dde Uploaded
fubar
parents:
diff changeset
117 help="Positional: ordinal integer or 'STDOUT' if '>' required. Otherwise ignored if argparse because name is used. If positional parameters, enter the integer ordinal expected for this parameter. If argparse, ignore unless STDOUT needed" value=""/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
118 <param name="history_test" type="text" label="Output test criteria"
2a46da701dde Uploaded
fubar
parents:
diff changeset
119 help="Pass/fail decision criterion for this output compared to test generation. Available options are diff:[lines], sim_size:[delta (integer) or delta_frac (float)" value="diff:0"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
120 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
121 <repeat name="collection_outputs" title="Output Collections" min="0"
2a46da701dde Uploaded
fubar
parents:
diff changeset
122 help="New history collections to appear in the user history after the tool runs. Hides outputs not needed for downstream tools such as images and intermediate reports." default="0">
2a46da701dde Uploaded
fubar
parents:
diff changeset
123 <param name="name" type="text" label="Name"
2a46da701dde Uploaded
fubar
parents:
diff changeset
124 help="for new collection with all outputs not individually passed to history outputs. No spaces! Script MUST create and fill a directory with the same name and the tool test MUST be overwritten - see the plotter example for hints">
2a46da701dde Uploaded
fubar
parents:
diff changeset
125 <sanitizer invalid_char="_">
2a46da701dde Uploaded
fubar
parents:
diff changeset
126 <valid initial="string.ascii_letters,string.digits" >
2a46da701dde Uploaded
fubar
parents:
diff changeset
127 <add value="_" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
128 </valid>
2a46da701dde Uploaded
fubar
parents:
diff changeset
129 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
130 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
131 <param name="kind" type="select" multiple="false" label="Select the kind of collection for this output"
2a46da701dde Uploaded
fubar
parents:
diff changeset
132 help="">
2a46da701dde Uploaded
fubar
parents:
diff changeset
133 <option value="list" selected="true">List</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
134 <option value="paired">Paired</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
135 <option value="list:paired">List of paired</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
136 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
137 <param name="label" type="text" label="Label for this collection" help="" value=""/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
138 <param name="discover" type="text" label="Discover datasets expression" help="__name_and_ext__ should catch all filenames with extensions" value="__name_and_ext__"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
139 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
140
2a46da701dde Uploaded
fubar
parents:
diff changeset
141 </section>
2a46da701dde Uploaded
fubar
parents:
diff changeset
142 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
143 <xml name="additparam">
2a46da701dde Uploaded
fubar
parents:
diff changeset
144 <section name="addparam" title="Arguments" help="Executable or script settings passed on the command line other than I/O files" expanded="true">
2a46da701dde Uploaded
fubar
parents:
diff changeset
145 <param name="edit_params" type="select" display="radio" label="Make these settings on the generated tool form user editable?"
2a46da701dde Uploaded
fubar
parents:
diff changeset
146 help="If no, 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">
2a46da701dde Uploaded
fubar
parents:
diff changeset
147 <option value="yes" selected="true">Yes, allow user to edit all additional parameters on the generated tool form</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
148 <option value="no">No - use the fixed values for all additional parameters - no user editing</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
149 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
150 <repeat name="additional_parameters" title="Command Line Paramters" min="0"
2a46da701dde Uploaded
fubar
parents:
diff changeset
151 help="Command line settings for the user to pass to the executable. See examples below to see how these can be parsed by scripts in the various languages">
2a46da701dde Uploaded
fubar
parents:
diff changeset
152 <param name="param_name" type="text" value="" label="Choose the name for this parameter - MUST not be blank!">
2a46da701dde Uploaded
fubar
parents:
diff changeset
153 <sanitizer invalid_char="">
2a46da701dde Uploaded
fubar
parents:
diff changeset
154 <valid initial="string.ascii_letters,string.digits"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
155 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
156 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
157 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
158 <conditional name="ap_type">
2a46da701dde Uploaded
fubar
parents:
diff changeset
159 <param name="param_type" type="select" label="Select the type for this parameter">
2a46da701dde Uploaded
fubar
parents:
diff changeset
160 <option value="text" selected="true">Text string</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
161 <option value="integer">Integer</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
162 <option value="float">Float</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
163 <option value="boolean">Boolean</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
164 <option value="selecttext">Select text string</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
165 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
166 <when value = "text">
2a46da701dde Uploaded
fubar
parents:
diff changeset
167 <expand macro="singleText" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
168 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
169 <when value = "integer">
2a46da701dde Uploaded
fubar
parents:
diff changeset
170 <expand macro="singleInt" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
171 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
172 <when value = "float">
2a46da701dde Uploaded
fubar
parents:
diff changeset
173 <expand macro="singleFloat" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
174 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
175 <when value = "boolean">
2a46da701dde Uploaded
fubar
parents:
diff changeset
176 <expand macro="singleBoolean" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
177 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
178 <when value = "selecttext">
2a46da701dde Uploaded
fubar
parents:
diff changeset
179 <expand macro="selectText" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
180 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
181 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
182 <param name="param_label" type="text" value="" label="Enter this parameter's label for the form">
2a46da701dde Uploaded
fubar
parents:
diff changeset
183 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
184 <param name="param_help" type="text" value="" label="Help for this parameter">
2a46da701dde Uploaded
fubar
parents:
diff changeset
185 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
186 <param name="param_CL" type="text" label="Positional ordinal | argparse argument name"
2a46da701dde Uploaded
fubar
parents:
diff changeset
187 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="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
188 <param name="param_CLprefixed" type="text" label="Override the generated default argparse name prefix if not empty - eg ----foo if needed"
2a46da701dde Uploaded
fubar
parents:
diff changeset
189 help="Some targets like Planemo expect an unadorned action like 'test' before --galaxy_root." value="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
190 <param name="param_repeat" type="boolean" checked="False" truevalue="1" falsevalue="0" label="Allow user to repeat this as many times as needed." />
2a46da701dde Uploaded
fubar
parents:
diff changeset
191 </repeat>
2a46da701dde Uploaded
fubar
parents:
diff changeset
192 </section>
2a46da701dde Uploaded
fubar
parents:
diff changeset
193 </xml>
2a46da701dde Uploaded
fubar
parents:
diff changeset
194 </macros>
2a46da701dde Uploaded
fubar
parents:
diff changeset
195
2a46da701dde Uploaded
fubar
parents:
diff changeset
196 <requirements>
2a46da701dde Uploaded
fubar
parents:
diff changeset
197 <requirement type="package" version="0.4.14">galaxyxml</requirement>
2a46da701dde Uploaded
fubar
parents:
diff changeset
198 <requirement type="package" version="0.15.0">bioblend</requirement>
2a46da701dde Uploaded
fubar
parents:
diff changeset
199 </requirements>
2a46da701dde Uploaded
fubar
parents:
diff changeset
200
2a46da701dde Uploaded
fubar
parents:
diff changeset
201 <command detect_errors="exit_code"><![CDATA[
2a46da701dde Uploaded
fubar
parents:
diff changeset
202 #import os
2a46da701dde Uploaded
fubar
parents:
diff changeset
203 #set dev_env = os.environ.get('GALAXY_DEVELOPMENT_ENVIRONMENT', '0') == '1'
2a46da701dde Uploaded
fubar
parents:
diff changeset
204 #if not $dev_env and ( $__user_email__ not in $__admin_users__ ):
2a46da701dde Uploaded
fubar
parents:
diff changeset
205 python3 $__tool_directory__/rgToolFactory2.py --bad_user $__user_email__
2a46da701dde Uploaded
fubar
parents:
diff changeset
206 #else:
2a46da701dde Uploaded
fubar
parents:
diff changeset
207 python3 $__tool_directory__/ToolFactory.py
2a46da701dde Uploaded
fubar
parents:
diff changeset
208 #if len(str($cl_suffix)) > 0:
2a46da701dde Uploaded
fubar
parents:
diff changeset
209 --cl_user_suffix "$cl_suffix"
2a46da701dde Uploaded
fubar
parents:
diff changeset
210 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
211 #if $cover.commover == "yes":
2a46da701dde Uploaded
fubar
parents:
diff changeset
212 #if len(str($cover.command_override)) > 10:
2a46da701dde Uploaded
fubar
parents:
diff changeset
213 --command_override "$commandoverride"
2a46da701dde Uploaded
fubar
parents:
diff changeset
214 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
215 #if len(str($cover.test_override)) > 10:
2a46da701dde Uploaded
fubar
parents:
diff changeset
216 --test_override "$testoverride"
2a46da701dde Uploaded
fubar
parents:
diff changeset
217 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
218 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
219 #if $deps.packages > "":
2a46da701dde Uploaded
fubar
parents:
diff changeset
220 --packages "$deps.packages"
2a46da701dde Uploaded
fubar
parents:
diff changeset
221 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
222 #if $deps.usescript.choosescript == "yes":
2a46da701dde Uploaded
fubar
parents:
diff changeset
223 --script_path "$runme"
2a46da701dde Uploaded
fubar
parents:
diff changeset
224 --sysexe "$deps.usescript.scriptrunner"
2a46da701dde Uploaded
fubar
parents:
diff changeset
225 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
226 --tool_name "$tool_name" --user_email "$__user_email__" --citations "$citeme" --parampass "$io_param.ppass.parampass"
2a46da701dde Uploaded
fubar
parents:
diff changeset
227 --tool_desc "$tool_desc"
2a46da701dde Uploaded
fubar
parents:
diff changeset
228 --tool_version "$tool_version"
2a46da701dde Uploaded
fubar
parents:
diff changeset
229 --help_text "$helpme"
2a46da701dde Uploaded
fubar
parents:
diff changeset
230 --new_tool "$new_tool"
2a46da701dde Uploaded
fubar
parents:
diff changeset
231 #if $install:
2a46da701dde Uploaded
fubar
parents:
diff changeset
232 --install
2a46da701dde Uploaded
fubar
parents:
diff changeset
233 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
234 #if $do_test.run_test:
2a46da701dde Uploaded
fubar
parents:
diff changeset
235 --run_test
2a46da701dde Uploaded
fubar
parents:
diff changeset
236 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
237 #if $io_param.ppass.parampass != '0':
2a46da701dde Uploaded
fubar
parents:
diff changeset
238 #if str($io_param.ppass.addparam.edit_params) == "yes":
2a46da701dde Uploaded
fubar
parents:
diff changeset
239 --edit_additional_parameters
2a46da701dde Uploaded
fubar
parents:
diff changeset
240 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
241 #for $apar in $io_param.ppass.addparam.additional_parameters:
2a46da701dde Uploaded
fubar
parents:
diff changeset
242 #if $apar.ap_type.param_type=="selecttext":
2a46da701dde Uploaded
fubar
parents:
diff changeset
243 --selecttext_parameters '{"name":"$apar.param_name", "label":"$apar.param_label", "help":"$apar.param_help",
2a46da701dde Uploaded
fubar
parents:
diff changeset
244 "type":"$apar.ap_type.param_type","CL":"$apar.param_CL","override":"$apar.param_CLprefixed","value": [
2a46da701dde Uploaded
fubar
parents:
diff changeset
245 #for $i,$st in enumerate($apar.ap_type.selectTexts):
2a46da701dde Uploaded
fubar
parents:
diff changeset
246 "$st.select_value"
2a46da701dde Uploaded
fubar
parents:
diff changeset
247 #if ($i < (len($apar.ap_type.selectTexts)-1)):
2a46da701dde Uploaded
fubar
parents:
diff changeset
248 ,
2a46da701dde Uploaded
fubar
parents:
diff changeset
249 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
250 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
251 ], "texts": [
2a46da701dde Uploaded
fubar
parents:
diff changeset
252 #for $i,$st in enumerate($apar.ap_type.selectTexts):
2a46da701dde Uploaded
fubar
parents:
diff changeset
253 "$st.select_text"
2a46da701dde Uploaded
fubar
parents:
diff changeset
254 #if ($i < (len($apar.ap_type.selectTexts)-1)):
2a46da701dde Uploaded
fubar
parents:
diff changeset
255 ,
2a46da701dde Uploaded
fubar
parents:
diff changeset
256 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
257
2a46da701dde Uploaded
fubar
parents:
diff changeset
258 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
259 ]
2a46da701dde Uploaded
fubar
parents:
diff changeset
260 }'
2a46da701dde Uploaded
fubar
parents:
diff changeset
261 #else:
2a46da701dde Uploaded
fubar
parents:
diff changeset
262 --additional_parameters '{"name": "$apar.param_name", "value": "$apar.ap_type.param_value", "label": "$apar.param_label", "help": "$apar.param_help",
2a46da701dde Uploaded
fubar
parents:
diff changeset
263 "type": "$apar.ap_type.param_type","CL": "$apar.param_CL","override": "$apar.param_CLprefixed", "repeat": "$apar.param_repeat"}'
2a46da701dde Uploaded
fubar
parents:
diff changeset
264 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
265 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
266 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
267 #for $intab in $io_param.ppass.io.history_inputs:
2a46da701dde Uploaded
fubar
parents:
diff changeset
268 --input_files '{"name": "$intab.input_files", "CL": "$intab.input_CL", "format": "$intab.input_formats", "label": "$intab.input_label", "help": "$intab.input_help", "repeat": "$intab.input_repeat"}'
2a46da701dde Uploaded
fubar
parents:
diff changeset
269 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
270 #for $otab in $io_param.ppass.io.history_outputs:
2a46da701dde Uploaded
fubar
parents:
diff changeset
271 --output_files '{"name": "$otab.history_name", "format": "$otab.history_format", "CL": "$otab.history_CL", "test": "$otab.history_test"}'
2a46da701dde Uploaded
fubar
parents:
diff changeset
272 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
273 #for $collect in $io_param.ppass.io.collection_outputs:
2a46da701dde Uploaded
fubar
parents:
diff changeset
274 --collection '{"name": "$collect.name", "kind": "$collect.kind", "discover": "$collect.discover", "label": "$collect.label"}'
2a46da701dde Uploaded
fubar
parents:
diff changeset
275 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
276 --galaxy_root "$__root_dir__"
2a46da701dde Uploaded
fubar
parents:
diff changeset
277 --tool_dir "$__tool_directory__"
2a46da701dde Uploaded
fubar
parents:
diff changeset
278 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
279 ]]></command>
2a46da701dde Uploaded
fubar
parents:
diff changeset
280 <configfiles>
2a46da701dde Uploaded
fubar
parents:
diff changeset
281 <configfile name="runme">
2a46da701dde Uploaded
fubar
parents:
diff changeset
282 $deps.usescript.dynScript
2a46da701dde Uploaded
fubar
parents:
diff changeset
283 </configfile>
2a46da701dde Uploaded
fubar
parents:
diff changeset
284 <configfile name="commandoverride">
2a46da701dde Uploaded
fubar
parents:
diff changeset
285 #if $cover.commover == "yes" and len(str($cover.command_override).strip()) > 1:
2a46da701dde Uploaded
fubar
parents:
diff changeset
286 $cover.command_override
2a46da701dde Uploaded
fubar
parents:
diff changeset
287 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
288 </configfile>
2a46da701dde Uploaded
fubar
parents:
diff changeset
289 <configfile name="testoverride">
2a46da701dde Uploaded
fubar
parents:
diff changeset
290 #if $cover.commover == "yes" and len(str($cover.test_override).strip()) > 1:
2a46da701dde Uploaded
fubar
parents:
diff changeset
291 $cover.test_override
2a46da701dde Uploaded
fubar
parents:
diff changeset
292 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
293 </configfile>
2a46da701dde Uploaded
fubar
parents:
diff changeset
294 <configfile name="helpme">
2a46da701dde Uploaded
fubar
parents:
diff changeset
295 ${help_text}
2a46da701dde Uploaded
fubar
parents:
diff changeset
296 </configfile>
2a46da701dde Uploaded
fubar
parents:
diff changeset
297 <configfile name="citeme">
2a46da701dde Uploaded
fubar
parents:
diff changeset
298
2a46da701dde Uploaded
fubar
parents:
diff changeset
299 #for $citation in $citations:
2a46da701dde Uploaded
fubar
parents:
diff changeset
300 #if $citation.citation_type.type == "bibtex":
2a46da701dde Uploaded
fubar
parents:
diff changeset
301 **ENTRY**bibtex
2a46da701dde Uploaded
fubar
parents:
diff changeset
302 ${citation.citation_type.bibtex}
2a46da701dde Uploaded
fubar
parents:
diff changeset
303 #else
2a46da701dde Uploaded
fubar
parents:
diff changeset
304 **ENTRY**doi
2a46da701dde Uploaded
fubar
parents:
diff changeset
305 ${citation.citation_type.doi}
2a46da701dde Uploaded
fubar
parents:
diff changeset
306 #end if
2a46da701dde Uploaded
fubar
parents:
diff changeset
307 #end for
2a46da701dde Uploaded
fubar
parents:
diff changeset
308
2a46da701dde Uploaded
fubar
parents:
diff changeset
309 </configfile>
2a46da701dde Uploaded
fubar
parents:
diff changeset
310 </configfiles>
2a46da701dde Uploaded
fubar
parents:
diff changeset
311 <inputs>
2a46da701dde Uploaded
fubar
parents:
diff changeset
312 <param name="tool_name" type="text" value="tool1" label="New tool ID and title for outputs"
2a46da701dde Uploaded
fubar
parents:
diff changeset
313 help="Toolshed repository name. Choose thoughtfully to avoid namespace clashes with other tool writers. Lower case, digits and underscores only">
2a46da701dde Uploaded
fubar
parents:
diff changeset
314 <sanitizer invalid_char="">
2a46da701dde Uploaded
fubar
parents:
diff changeset
315 <valid initial="string.ascii_lowercase,string.digits">
2a46da701dde Uploaded
fubar
parents:
diff changeset
316 <add value="_"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
317 </valid>
2a46da701dde Uploaded
fubar
parents:
diff changeset
318 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
319 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
320
2a46da701dde Uploaded
fubar
parents:
diff changeset
321 <section name="deps" title="Dependencies, optional script and script interpreter" expanded="true">
2a46da701dde Uploaded
fubar
parents:
diff changeset
322
2a46da701dde Uploaded
fubar
parents:
diff changeset
323 <param name="packages" type="text" value="" label="Conda dependencies as package name[:version, name:version...]. These will always be available when this tool executes"
2a46da701dde Uploaded
fubar
parents:
diff changeset
324 help="Use =[ver] or :[ver] for specific version - 'bwa=0.17.0'. Default is latest. Will be used every time the tool is (re)run. Only Conda is currently supported" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
325
2a46da701dde Uploaded
fubar
parents:
diff changeset
326 <conditional name="usescript">
2a46da701dde Uploaded
fubar
parents:
diff changeset
327 <param name="choosescript" type="select" display="radio" label="Supply a script for a dependency (e.g. python/R/bash) or a system executable such as Bash"
2a46da701dde Uploaded
fubar
parents:
diff changeset
328 help = "For script interpreters like Python or bash, parameters and i/o specified below must match script's expectations - if you pass parameters, the script must deal with them">
2a46da701dde Uploaded
fubar
parents:
diff changeset
329 <option value="no">No script required for this tool - just pass parameters on the command line to the first dependency listed above</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
330 <option value="yes" selected="true">Yes, a script is ready to be pasted below</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
331 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
332 <when value="no">
2a46da701dde Uploaded
fubar
parents:
diff changeset
333 <param name="dynScript" type="hidden" value="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
334 <param name="scriptrunner" type="hidden" value="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
335 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
336 <when value="yes">
2a46da701dde Uploaded
fubar
parents:
diff changeset
337 <param name="scriptrunner" type="text" value="" label="Interpreter for the script - eg bash or python. Can be one of the dependencies named above or a system executable"
2a46da701dde Uploaded
fubar
parents:
diff changeset
338 help="Scripts are interpreted by the executable named here. For conda r-base, 'Rscript --vanilla' or for conda planemo, 'planemo test' for example">
2a46da701dde Uploaded
fubar
parents:
diff changeset
339 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
340 <param name="dynScript" type="text" area="True" value="" label="Script for executable above to interpret. It can be one of the Conda dependency names "
2a46da701dde Uploaded
fubar
parents:
diff changeset
341 help="Script must handle all i/o and parameters as specified below using the parameters and passing method chosen below">
2a46da701dde Uploaded
fubar
parents:
diff changeset
342 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
343 <valid initial="string.printable"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
344 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
345 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
346 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
347 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
348 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
349 </section>
2a46da701dde Uploaded
fubar
parents:
diff changeset
350 <section name="io_param" title="Data file input, output and settings forming the executable or script command line" expanded="true">
2a46da701dde Uploaded
fubar
parents:
diff changeset
351 <conditional name="ppass">
2a46da701dde Uploaded
fubar
parents:
diff changeset
352 <param name="parampass" type="select" display="radio" label="Command line parameter passing method to use">
2a46da701dde Uploaded
fubar
parents:
diff changeset
353 <option value="argparse" selected="true">Argparse: passed in the form of --clname value</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
354 <option value="positional">Positional: Passed in the order of positional ordinals ...foo.bam bar.idx zot.xls</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
355 <option value="0">Tool reads selected input file from STDIN and writes STDOUT with no parameters</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
356 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
357 <when value="argparse">
2a46da701dde Uploaded
fubar
parents:
diff changeset
358 <expand macro="io" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
359 <expand macro="additparam" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
360 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
361 <when value="positional">
2a46da701dde Uploaded
fubar
parents:
diff changeset
362 <expand macro="io" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
363 <expand macro="additparam" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
364 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
365 <when value="0">
2a46da701dde Uploaded
fubar
parents:
diff changeset
366 <expand macro="io"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
367 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
368 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
369 </section>
2a46da701dde Uploaded
fubar
parents:
diff changeset
370 <param name="cl_suffix" type="text" value="" label="Suffix for generated command line. Useful for bash post processing. Use override below to replace completely"
2a46da701dde Uploaded
fubar
parents:
diff changeset
371 help="';' separated bash commands can be used here for post processing - added at end of autogenerated command line">
2a46da701dde Uploaded
fubar
parents:
diff changeset
372 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
373 <valid initial="string.printable" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
374 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
375 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
376 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
377 <conditional name="cover">
2a46da701dde Uploaded
fubar
parents:
diff changeset
378 <param name="commover" type="select" display="radio" label="Add Human wrought code to override the generated XML command and/or test section - DIY"
2a46da701dde Uploaded
fubar
parents:
diff changeset
379 help = "For arbitrary and artfull command lines. All i/o and parameters must be passed. Choose No unless needed. Not for the faint of heart">
2a46da701dde Uploaded
fubar
parents:
diff changeset
380 <option value="no" selected="true">No. Use automatically generated command/test XML </option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
381 <option value="yes">Yes. XML needed to override autogenerated command and/or test segments will be pasted below</option>
2a46da701dde Uploaded
fubar
parents:
diff changeset
382 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
383 <when value="no">
2a46da701dde Uploaded
fubar
parents:
diff changeset
384 <param name="command_override" type="hidden" value="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
385 <param name="test_override" type="hidden" value="" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
386 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
387 <when value="yes">
2a46da701dde Uploaded
fubar
parents:
diff changeset
388 <param name="command_override" type="text" area="True" value="" label="Optional. Human wrought command element override XML/template - e.g. for bwa"
2a46da701dde Uploaded
fubar
parents:
diff changeset
389 help="For arbitrary and artfull command lines. All i/o and parameters must be passed. Leave blank unless needed. Not for the faint of heart">
2a46da701dde Uploaded
fubar
parents:
diff changeset
390 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
391 <valid initial="string.printable"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
392 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
393 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
394 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
395 <param name="test_override" type="text" area="True" value="" label="Optional. Human wrought test element override XML/template - e.g. for bwa"
2a46da701dde Uploaded
fubar
parents:
diff changeset
396 help="For arbitrary and artfull scripts. Leave blank unless needed. Not for the faint of heart">
2a46da701dde Uploaded
fubar
parents:
diff changeset
397 <sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
398 <valid initial="string.printable" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
399 <mapping initial="none"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
400 </sanitizer>
2a46da701dde Uploaded
fubar
parents:
diff changeset
401 </param>
2a46da701dde Uploaded
fubar
parents:
diff changeset
402 </when>
2a46da701dde Uploaded
fubar
parents:
diff changeset
403 </conditional>
2a46da701dde Uploaded
fubar
parents:
diff changeset
404 <expand macro="tool_metadata" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
405 </inputs>
2a46da701dde Uploaded
fubar
parents:
diff changeset
406 <outputs>
2a46da701dde Uploaded
fubar
parents:
diff changeset
407 <data format="toolshed.gz" name="new_tool" label="${tool_name}_${do_test.tail}_toolshed.gz" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
408 <collection name="TF_run_report" type="list" label="${tool_name} test run outputs">
2a46da701dde Uploaded
fubar
parents:
diff changeset
409 <filter>do_test['run_test']</filter>
2a46da701dde Uploaded
fubar
parents:
diff changeset
410 <discover_datasets pattern="__name_and_ext__" directory="TF_run_report" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
411 </collection>
2a46da701dde Uploaded
fubar
parents:
diff changeset
412 </outputs>
2a46da701dde Uploaded
fubar
parents:
diff changeset
413 <tests>
2a46da701dde Uploaded
fubar
parents:
diff changeset
414 <test>
2a46da701dde Uploaded
fubar
parents:
diff changeset
415 <param name="user_email" value="admin@galaxy.org"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
416 <param name="input_files" value="input1_sample" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
417 <param name="input_CL" value="1" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
418 <param name="input_formats" value="txt" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
419 <param name="input_label" value="input" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
420 <param name="input_help" value="help" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
421 <param name="tool_name" value="pyrevpos" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
422 <param name="parampass" value="positional" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
423 <param name="tool_version" value="0.01" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
424 <param name="tool_desc" value="positional reverse" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
425 <param name="help_text" value="help text goes here" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
426 <param name="packages" value="python"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
427 <param name="history_name" value="output2" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
428 <param name="history_format" value="txt" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
429 <param name="history_CL" value="2" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
430 <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()"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
431 <param name="choosescript" value="yes" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
432 <param name="script_path" value="$runme"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
433 <param name="install" value="0"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
434 <param name="run_test" value="1"/>
2a46da701dde Uploaded
fubar
parents:
diff changeset
435 <output name="new_tool" file="toolfactory_pyrevpos_tgz_sample" compare="sim_size" delta="6000" />
2a46da701dde Uploaded
fubar
parents:
diff changeset
436 </test>
2a46da701dde Uploaded
fubar
parents:
diff changeset
437 </tests>
2a46da701dde Uploaded
fubar
parents:
diff changeset
438 <help>
2a46da701dde Uploaded
fubar
parents:
diff changeset
439
2a46da701dde Uploaded
fubar
parents:
diff changeset
440 .. class:: warningmark
2a46da701dde Uploaded
fubar
parents:
diff changeset
441
2a46da701dde Uploaded
fubar
parents:
diff changeset
442 **Details and attribution**
2a46da701dde Uploaded
fubar
parents:
diff changeset
443 (see GTF_)
2a46da701dde Uploaded
fubar
parents:
diff changeset
444
2a46da701dde Uploaded
fubar
parents:
diff changeset
445 **Local Admins ONLY**
2a46da701dde Uploaded
fubar
parents:
diff changeset
446 Only users whose IDs found in the local admin_user configuration setting in universe_wsgi.ini can run this tool.
2a46da701dde Uploaded
fubar
parents:
diff changeset
447
2a46da701dde Uploaded
fubar
parents:
diff changeset
448 **If you find a bug**
2a46da701dde Uploaded
fubar
parents:
diff changeset
449 Please raise an issue, or even better, submit a pull request fixing it, on the github repository GTF_
2a46da701dde Uploaded
fubar
parents:
diff changeset
450
2a46da701dde Uploaded
fubar
parents:
diff changeset
451 **What it does**
2a46da701dde Uploaded
fubar
parents:
diff changeset
452 This tool optionally generates normal workflow compatible first class Galaxy tools
2a46da701dde Uploaded
fubar
parents:
diff changeset
453
2a46da701dde Uploaded
fubar
parents:
diff changeset
454 Generated tools can run existing binary packages that become requirements, existing scripts, or new scripts pasted into this tool form.
2a46da701dde Uploaded
fubar
parents:
diff changeset
455 Pasted scripts are written so they are part of the new tool and cannot be adjusted by the downstream user.
2a46da701dde Uploaded
fubar
parents:
diff changeset
456 Binary packages are managed by the dependency subsystem - conda usually, so anything in bioconda or conda_forge is available for example.
2a46da701dde Uploaded
fubar
parents:
diff changeset
457
2a46da701dde Uploaded
fubar
parents:
diff changeset
458 Any number of parameters can be built into the new tool form for passing in to the script or executable at runtime.
2a46da701dde Uploaded
fubar
parents:
diff changeset
459 These can be editable by the downstream user or baked in.
2a46da701dde Uploaded
fubar
parents:
diff changeset
460
2a46da701dde Uploaded
fubar
parents:
diff changeset
461 A new tarball compatible with any Galaxy toolshed is created in your history, however, it does not have the test prepared.
2a46da701dde Uploaded
fubar
parents:
diff changeset
462 There is a separate tool you can run to update the archive after testing with Planemo
2a46da701dde Uploaded
fubar
parents:
diff changeset
463
2a46da701dde Uploaded
fubar
parents:
diff changeset
464 If the configuration in job_conf.xml allows tools to write to [galaxy_root]/tools, the new tool will be installed so you can view and test it locally.
2a46da701dde Uploaded
fubar
parents:
diff changeset
465
2a46da701dde Uploaded
fubar
parents:
diff changeset
466 .. class:: warningmark
2a46da701dde Uploaded
fubar
parents:
diff changeset
467
2a46da701dde Uploaded
fubar
parents:
diff changeset
468 **Note to system administrators**
2a46da701dde Uploaded
fubar
parents:
diff changeset
469 This tool offers *NO* built in protection against malicious scripts. It should only be installed on private/personnal Galaxy instances.
2a46da701dde Uploaded
fubar
parents:
diff changeset
470 Admin_users will have the power to do anything they want as the Galaxy user if you install this tool.
2a46da701dde Uploaded
fubar
parents:
diff changeset
471
2a46da701dde Uploaded
fubar
parents:
diff changeset
472 .. class:: warningmark
2a46da701dde Uploaded
fubar
parents:
diff changeset
473
2a46da701dde Uploaded
fubar
parents:
diff changeset
474 **Use on public servers** is STRONGLY discouraged for obvious reasons
2a46da701dde Uploaded
fubar
parents:
diff changeset
475
2a46da701dde Uploaded
fubar
parents:
diff changeset
476 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.
2a46da701dde Uploaded
fubar
parents:
diff changeset
477 We recommend that you follow the good code hygiene practices associated with safe toolshed practices.
2a46da701dde Uploaded
fubar
parents:
diff changeset
478
2a46da701dde Uploaded
fubar
parents:
diff changeset
479 Here's a sample python script that can be cut and pasted into the tool form, suitable for positional parameter passing:
2a46da701dde Uploaded
fubar
parents:
diff changeset
480
2a46da701dde Uploaded
fubar
parents:
diff changeset
481 ::
2a46da701dde Uploaded
fubar
parents:
diff changeset
482
2a46da701dde Uploaded
fubar
parents:
diff changeset
483 # reverse order of text by row
2a46da701dde Uploaded
fubar
parents:
diff changeset
484 import sys
2a46da701dde Uploaded
fubar
parents:
diff changeset
485 inp = sys.argv[1]
2a46da701dde Uploaded
fubar
parents:
diff changeset
486 outp = sys.argv[2]
2a46da701dde Uploaded
fubar
parents:
diff changeset
487 i = open(inp,'r').readlines()
2a46da701dde Uploaded
fubar
parents:
diff changeset
488 o = open(outp,'w')
2a46da701dde Uploaded
fubar
parents:
diff changeset
489 for row in i:
2a46da701dde Uploaded
fubar
parents:
diff changeset
490 rs = row.rstrip()
2a46da701dde Uploaded
fubar
parents:
diff changeset
491 rs = list(rs)
2a46da701dde Uploaded
fubar
parents:
diff changeset
492 rs.reverse()
2a46da701dde Uploaded
fubar
parents:
diff changeset
493 o.write(''.join(rs))
2a46da701dde Uploaded
fubar
parents:
diff changeset
494 o.write('\n')
2a46da701dde Uploaded
fubar
parents:
diff changeset
495 o.close()
2a46da701dde Uploaded
fubar
parents:
diff changeset
496
2a46da701dde Uploaded
fubar
parents:
diff changeset
497 With argparse style parameters:
2a46da701dde Uploaded
fubar
parents:
diff changeset
498
2a46da701dde Uploaded
fubar
parents:
diff changeset
499 ::
2a46da701dde Uploaded
fubar
parents:
diff changeset
500
2a46da701dde Uploaded
fubar
parents:
diff changeset
501 # reverse order of text by row
2a46da701dde Uploaded
fubar
parents:
diff changeset
502 import argparse
2a46da701dde Uploaded
fubar
parents:
diff changeset
503 parser = argparse.ArgumentParser()
2a46da701dde Uploaded
fubar
parents:
diff changeset
504 a = parser.add_argument
2a46da701dde Uploaded
fubar
parents:
diff changeset
505 a('--infile',default='')
2a46da701dde Uploaded
fubar
parents:
diff changeset
506 a('--outfile',default=None)
2a46da701dde Uploaded
fubar
parents:
diff changeset
507 args = parser.parse_args()
2a46da701dde Uploaded
fubar
parents:
diff changeset
508 inp = args.infile
2a46da701dde Uploaded
fubar
parents:
diff changeset
509 outp = args.outfile
2a46da701dde Uploaded
fubar
parents:
diff changeset
510 i = open(inp,'r').readlines()
2a46da701dde Uploaded
fubar
parents:
diff changeset
511 o = open(outp,'w')
2a46da701dde Uploaded
fubar
parents:
diff changeset
512 for row in i:
2a46da701dde Uploaded
fubar
parents:
diff changeset
513 rs = row.rstrip()
2a46da701dde Uploaded
fubar
parents:
diff changeset
514 rs = list(rs)
2a46da701dde Uploaded
fubar
parents:
diff changeset
515 rs.reverse()
2a46da701dde Uploaded
fubar
parents:
diff changeset
516 o.write(''.join(rs))
2a46da701dde Uploaded
fubar
parents:
diff changeset
517 o.write('\n')
2a46da701dde Uploaded
fubar
parents:
diff changeset
518 o.close()
2a46da701dde Uploaded
fubar
parents:
diff changeset
519
2a46da701dde Uploaded
fubar
parents:
diff changeset
520 R script to draw some plots - use a collection.
2a46da701dde Uploaded
fubar
parents:
diff changeset
521
2a46da701dde Uploaded
fubar
parents:
diff changeset
522 ::
2a46da701dde Uploaded
fubar
parents:
diff changeset
523
2a46da701dde Uploaded
fubar
parents:
diff changeset
524
2a46da701dde Uploaded
fubar
parents:
diff changeset
525 \# note this script takes NO input because it generates random data
2a46da701dde Uploaded
fubar
parents:
diff changeset
526 dir.create('plots')
2a46da701dde Uploaded
fubar
parents:
diff changeset
527 for (i in 1:10) {
2a46da701dde Uploaded
fubar
parents:
diff changeset
528 foo = runif(100)
2a46da701dde Uploaded
fubar
parents:
diff changeset
529 bar = rnorm(100)
2a46da701dde Uploaded
fubar
parents:
diff changeset
530 bar = foo + 0.05*bar
2a46da701dde Uploaded
fubar
parents:
diff changeset
531 pdf(paste('plots/yet',i,"anotherplot.pdf",sep='_'))
2a46da701dde Uploaded
fubar
parents:
diff changeset
532 plot(foo,bar,main=paste("Foo by Bar plot \#",i),col="maroon", pch=3,cex=0.6)
2a46da701dde Uploaded
fubar
parents:
diff changeset
533 dev.off()
2a46da701dde Uploaded
fubar
parents:
diff changeset
534 foo = data.frame(a=runif(100),b=runif(100),c=runif(100),d=runif(100),e=runif(100),f=runif(100))
2a46da701dde Uploaded
fubar
parents:
diff changeset
535 bar = as.matrix(foo)
2a46da701dde Uploaded
fubar
parents:
diff changeset
536 pdf(paste('plots/yet',i,"anotherheatmap.pdf",sep='_'))
2a46da701dde Uploaded
fubar
parents:
diff changeset
537 heatmap(bar,main='Random Heatmap')
2a46da701dde Uploaded
fubar
parents:
diff changeset
538 dev.off()
2a46da701dde Uploaded
fubar
parents:
diff changeset
539 }
2a46da701dde Uploaded
fubar
parents:
diff changeset
540
2a46da701dde Uploaded
fubar
parents:
diff changeset
541
2a46da701dde Uploaded
fubar
parents:
diff changeset
542
2a46da701dde Uploaded
fubar
parents:
diff changeset
543 Paper_
2a46da701dde Uploaded
fubar
parents:
diff changeset
544
2a46da701dde Uploaded
fubar
parents:
diff changeset
545 *Licensing*
2a46da701dde Uploaded
fubar
parents:
diff changeset
546
2a46da701dde Uploaded
fubar
parents:
diff changeset
547 Copyright Ross Lazarus (ross period lazarus at gmail period com) May 2012
2a46da701dde Uploaded
fubar
parents:
diff changeset
548 All rights reserved.
2a46da701dde Uploaded
fubar
parents:
diff changeset
549 Licensed under the LGPL_
2a46da701dde Uploaded
fubar
parents:
diff changeset
550
2a46da701dde Uploaded
fubar
parents:
diff changeset
551 .. _LGPL: http://www.gnu.org/copyleft/lesser.html
2a46da701dde Uploaded
fubar
parents:
diff changeset
552 .. _GTF: https://github.com/fubar2/toolfactory
2a46da701dde Uploaded
fubar
parents:
diff changeset
553 .. _Paper: https://academic.oup.com/bioinformatics/article/28/23/3139/192853
2a46da701dde Uploaded
fubar
parents:
diff changeset
554
2a46da701dde Uploaded
fubar
parents:
diff changeset
555
2a46da701dde Uploaded
fubar
parents:
diff changeset
556 </help>
2a46da701dde Uploaded
fubar
parents:
diff changeset
557 <citations>
2a46da701dde Uploaded
fubar
parents:
diff changeset
558 <citation type="doi">10.1093/bioinformatics/bts573</citation>
2a46da701dde Uploaded
fubar
parents:
diff changeset
559 </citations>
2a46da701dde Uploaded
fubar
parents:
diff changeset
560 </tool>
2a46da701dde Uploaded
fubar
parents:
diff changeset
561
2a46da701dde Uploaded
fubar
parents:
diff changeset
562