annotate toolfactory/rgToolFactory2.xml @ 2:2da2565f2e50 draft default tip

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