annotate toolfactory/rgToolFactory2.xml @ 138:1dba6c7687a9 draft

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