annotate toolfactory/rgToolFactory2.xml @ 1:c6d97af72f7c draft

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