annotate toolfactory/rgToolFactory2.xml @ 148:470d3e309508 draft

Uploaded
author fubar
date Sun, 18 Apr 2021 08:30:25 +0000
parents 2961862e2236
children ecd1d283b5a7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
146
2961862e2236 Uploaded
fubar
parents: 145
diff changeset
1 <tool id="rgtf2" name="toolfactory" version="2.00" profile="16.04" >
121
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>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
184 <requirement type="package" version="0.74.3">planemo</requirement>
146
2961862e2236 Uploaded
fubar
parents: 145
diff changeset
185 <requirement type="package" version="0.10.6">ephemeris</requirement>
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
186 </requirements>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
187
139
6b414af9ca11 Uploaded
fubar
parents: 138
diff changeset
188 <command detect_errors="exit_code"><![CDATA[
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
189 #import os
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
190 #set dev_env = os.environ.get('GALAXY_DEVELOPMENT_ENVIRONMENT', '0') == '1'
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
191 #if not $dev_env and ( $__user_email__ not in $__admin_users__ ):
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
192 python3 $__tool_directory__/rgToolFactory2.py --bad_user $__user_email__
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
193 #else:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
194 python3 $__tool_directory__/rgToolFactory2.py
129
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
195 #if len(str($cl_suffix)) > 0:
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
196 --cl_suffix "$cl_suffix"
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
197 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
198 #if $cover.commover == "yes":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
199 #if len(str($cover.command_override)) > 10:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
200 --command_override "$commandoverride"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
201 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
202 #if len(str($cover.test_override)) > 10:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
203 --test_override "$testoverride"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
204 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
205 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
206 --packages "$deps.packages"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
207 #if $deps.usescript.choosescript == "yes":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
208 --script_path "$runme"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
209 --sysexe "$deps.usescript.scriptrunner"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
210 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
211 --tool_name "$tool_name" --user_email "$__user_email__" --citations "$citeme" --parampass "$io_param.ppass.parampass"
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
212
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
213 #if str($make.makeMode.make_Tool)!="runonly":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
214 --make_Tool "$make.makeMode.make_Tool"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
215 --tool_desc "$make.makeMode.tool_desc"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
216 --tool_version "$make.makeMode.tool_version"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
217 --help_text "$helpme"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
218 --new_tool "$new_tool"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
219 --toolshed_api_key "$make.makeMode.toolshed_apikey"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
220 --galaxy_api_key "$make.makeMode.galaxy_apikey"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
221 --toolshed_url "$make.makeMode.toolshed_url"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
222 --galaxy_url "$make.makeMode.galaxy_url"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
223 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
224 #if $io_param.ppass.parampass != '0':
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
225 #if str($io_param.ppass.addparam.edit_params) == "yes":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
226 --edit_additional_parameters
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
227 #end if
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
228 #for $apar in $io_param.ppass.addparam.additional_parameters:
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
229 #if $apar.ap_type.param_type=="selecttext":
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
230 --selecttext_parameters '{"name":"$apar.param_name", "label":"$apar.param_label", "help":"$apar.param_help",
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
231 "type":"$apar.ap_type.param_type","CL":"$apar.param_CL","override":"$apar.param_CLprefixed","value": [
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
232 #for $i,$st in enumerate($apar.ap_type.selectTexts):
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
233 "$st.select_value"
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
234 #if ($i < (len($apar.ap_type.selectTexts)-1)):
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
235 ,
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
236 #end if
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
237 #end for
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
238 ], "texts": [
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
239 #for $i,$st in enumerate($apar.ap_type.selectTexts):
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
240 "$st.select_text"
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
241 #if ($i < (len($apar.ap_type.selectTexts)-1)):
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
242 ,
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
243 #end if
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
244
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
245 #end for
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
246 ]
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
247 }'
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
248 #else:
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
249 --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
250 "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
251 #end if
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
252 #end for
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
253 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
254 #for $intab in $io_param.ppass.io.history_inputs:
131
72d190989c68 Uploaded
fubar
parents: 130
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"}'
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
256 #end for
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
257 #for $otab in $io_param.ppass.io.history_outputs:
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
258 --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
259 #end for
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
260 #for $collect in $io_param.ppass.io.collection_outputs:
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
261 --collection '{"name": "$collect.name", "kind": "$collect.kind", "discover": "$collect.discover", "label": "$collect.label"}'
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
262 #end for
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
263 --galaxy_root "$__root_dir__"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
264 --tool_dir "$__tool_directory__"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
265 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
266 ]]></command>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
267 <configfiles>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
268 <configfile name="runme">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
269 $deps.usescript.dynScript
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
270 </configfile>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
271 <configfile name="commandoverride">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
272 #if $cover.commover == "yes" and len(str($cover.command_override).strip()) > 1:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
273 $cover.command_override
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
274 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
275 </configfile>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
276 <configfile name="testoverride">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
277 #if $cover.commover == "yes" and len(str($cover.test_override).strip()) > 1:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
278 $cover.test_override
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
279 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
280 </configfile>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
281 <configfile name="helpme">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
282 #if $make.makeMode.make_Tool != "runonly":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
283 ${make.makeMode.help_text}
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
284 #else
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
285 $tool_name help goes here
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
286 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
287 </configfile>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
288 <configfile name="citeme">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
289 #if $make.makeMode.make_Tool != "runonly":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
290 #for $citation in $make.makeMode.citations:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
291 #if $citation.citation_type.type == "bibtex":
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
292 **ENTRY**bibtex
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
293 ${citation.citation_type.bibtex}
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
294 #else
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
295 **ENTRY**doi
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
296 ${citation.citation_type.doi}
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
297 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
298 #end for
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
299 #end if
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
300 </configfile>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
301 </configfiles>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
302 <inputs>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
303 <param name="tool_name" type="text" value="tool1" label="New tool ID and title for outputs"
2050b2475ae5 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">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
305 <sanitizer invalid_char="">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
306 <valid initial="string.ascii_lowercase,string.digits">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
307 <add value="_"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
308 </valid>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
309 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
310 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
311
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
312 <section name="deps" title="Dependencies, optional script and script interpreter" expanded="true">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
313
2050b2475ae5 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"
126
def0f754ee1b Uploaded
fubar
parents: 123
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" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
316
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
317 <conditional name="usescript">
2050b2475ae5 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"
2050b2475ae5 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">
2050b2475ae5 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>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
321 <option value="yes" selected="true">Yes, a script is ready to be pasted below</option>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
322 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
323 <when value="no">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
324 <param name="dynScript" type="hidden" value="" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
325 <param name="scriptrunner" type="hidden" value="" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
326 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
327 <when value="yes">
2050b2475ae5 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"
126
def0f754ee1b Uploaded
fubar
parents: 123
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">
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
330 </param>
2050b2475ae5 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 "
2050b2475ae5 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">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
333 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
334 <valid initial="string.printable"/>
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
335 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
336 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
337 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
338 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
339 </conditional>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
340 </section>
2050b2475ae5 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">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
342 <conditional name="ppass">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
343 <param name="parampass" type="select" display="radio" label="Command line parameter passing method to use">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
344 <option value="argparse" selected="true">Argparse: passed in the form of --clname value</option>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
345 <option value="positional">Positional: Passed in the order of positional ordinals ...foo.bam bar.idx zot.xls</option>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
346 <option value="0">Tool reads selected input file from STDIN and writes STDOUT with no parameters</option>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
347 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
348 <when value="argparse">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
349 <expand macro="io" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
350 <expand macro="additparam" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
351 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
352 <when value="positional">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
353 <expand macro="io" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
354 <expand macro="additparam" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
355 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
356 <when value="0">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
357 <expand macro="io"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
358 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
359 </conditional>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
360 </section>
129
c35ff02652bf Uploaded
fubar
parents: 128
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"
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
362 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
363 <sanitizer>
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
364 <valid initial="string.printable" />
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
365 <mapping initial="none"/>
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
366 </sanitizer>
c35ff02652bf Uploaded
fubar
parents: 128
diff changeset
367 </param>
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
368 <conditional name="cover">
2050b2475ae5 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"
2050b2475ae5 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">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
371 <option value="no" selected="true">No. Use automatically generated command/test XML </option>
2050b2475ae5 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>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
373 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
374 <when value="no">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
375 <param name="command_override" type="hidden" value="" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
376 <param name="test_override" type="hidden" value="" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
377 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
378 <when value="yes">
2050b2475ae5 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"
2050b2475ae5 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">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
381 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
382 <valid initial="string.printable"/>
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
383 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
384 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
385 </param>
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
387 help="For arbitrary and artfull scripts. Leave blank unless needed. Not for the faint of heart">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
388 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
389 <valid initial="string.printable" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
390 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
391 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
392 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
393 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
394 </conditional>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
395 <section name="make" title="Generate, toolshed and local Galaxy installation options" expanded="true">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
396 <conditional name="makeMode">
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
398 help="Installation in this Galaxy is optional" >
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
399 <option value="generate" >Run to generate tests only. Should fail if dependencies needed.</option>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
400 <option value="gentest" selected="true">Test with planemo after generating.</option>
126
def0f754ee1b Uploaded
fubar
parents: 123
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>
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
402 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
403 <when value="generate">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
404 <param name="galaxy_apikey" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
405 <param name="toolshed_apikey" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
406 <param name="galaxy_url" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
407 <param name="toolshed_url" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
408 <expand macro="tool_metadata" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
409 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
410 <when value="gentest">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
411 <param name="galaxy_apikey" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
412 <param name="toolshed_apikey" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
413 <param name="galaxy_url" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
414 <param name="toolshed_url" value="" type="hidden" ></param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
415 <expand macro="tool_metadata" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
416 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
417 <when value="gentestinstall">
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
419 help="Default is localhost">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
420 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
421 <valid initial="string.printable" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
422 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
423 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
424 </param>
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
426 help="Cut and paste from the admin user properties screen">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
427 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
428 <valid initial="string.ascii_letters,string.digits" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
429 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
430 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
431 </param>
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
433 help="Default value is localhost:9009">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
434 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
435 <valid initial="string.printable" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
436 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
437 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
438 </param>
2050b2475ae5 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"
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
440 help="Cut and paste from the admin user properties screen">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
441 <sanitizer>
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
442 <valid initial="string.ascii_letters,string.digits" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
443 <mapping initial="none"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
444 </sanitizer>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
445 </param>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
446 <expand macro="tool_metadata" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
447 </when>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
448 </conditional>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
449 </section>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
450 </inputs>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
451 <outputs>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
452
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
453 <data format="toolshed.gz" name="new_tool" label="${tool_name}_toolshed.gz" >
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
454 <filter>makeMode['make_Tool'] != "runonly"</filter>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
455 </data>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
456
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
457 <collection name="TF_run_report" type="list" label="${tool_name} outputs">
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
458 <discover_datasets pattern="__name_and_ext__" directory="TF_run_report_tempdir" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
459 </collection>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
460 </outputs>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
461 <tests>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
462 <test>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
463 <param name="user_email" value="admin@galaxy.org"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
464 <param name="input_files" value="input1_sample" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
465 <param name="input_CL" value="1" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
466 <param name="input_formats" value="txt" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
467 <param name="input_label" value="input" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
468 <param name="input_help" value="help" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
469 <param name="tool_name" value="pyrevpos" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
470 <param name="parampass" value="positional" />
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
471 <param name="make_Tool" value="gentest" />
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
472 <param name="tool_version" value="0.01" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
473 <param name="tool_desc" value="positional reverse" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
474 <param name="help_text" value="help text goes here" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
475 <param name="packages" value="python"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
476 <param name="history_name" value="output2" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
477 <param name="history_format" value="txt" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
478 <param name="history_CL" value="2" />
2050b2475ae5 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()"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
480 <param name="choosescript" value="yes" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
481 <param name="script_path" value="$runme"/>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
482 <output name="new_tool" file="toolfactory_pyrevpos_tgz_sample" compare="sim_size" delta="6000" />
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
483 </test>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
484 </tests>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
485 <help>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
486
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
487 .. class:: warningmark
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
488
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
489 **Details and attribution**
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
490 (see GTF_)
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
491
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
492 **Local Admins ONLY**
2050b2475ae5 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.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
494
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
495 **If you find a bug**
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
496 Please raise an issue, or even better, submit a pull request fixing it, on the github repository GTF_
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
497
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
498 **What it does**
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
499 This tool optionally generates normal workflow compatible first class Galaxy tools
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
500
2050b2475ae5 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.
2050b2475ae5 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.
2050b2475ae5 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.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
504
2050b2475ae5 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.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
506 These can be editable by the downstream user or baked in.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
507
2050b2475ae5 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
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
509 set of outputs - these are used to construct a test for the new tool.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
510
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
511 If tool generation is required, a new tarball compatible with any Galaxy toolshed is created.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
512 It can be unpacked in your galaxy/tools directory and manually added to tool_conf.xml, or
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
513 installed into any toolshed from where it can be installed into your Galaxy.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
514
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
515
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
516 .. class:: warningmark
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
517
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
518 **Note to system administrators**
2050b2475ae5 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.
2050b2475ae5 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.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
521
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
522 .. class:: warningmark
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
523
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
524 **Use on public servers** is STRONGLY discouraged for obvious reasons
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
525
2050b2475ae5 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.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
527 We recommend that you follow the good code hygiene practices associated with safe toolshed practices.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
528
2050b2475ae5 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:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
530
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
531 ::
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
532
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
533 # reverse order of text by row
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
534 import sys
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
535 inp = sys.argv[1]
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
536 outp = sys.argv[2]
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
537 i = open(inp,'r').readlines()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
538 o = open(outp,'w')
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
539 for row in i:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
540 rs = row.rstrip()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
541 rs = list(rs)
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
542 rs.reverse()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
543 o.write(''.join(rs))
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
544 o.write('\n')
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
545 o.close()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
546
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
547 With argparse style parameters:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
548
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
549 ::
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
550
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
551 # reverse order of text by row
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
552 import argparse
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
553 parser = argparse.ArgumentParser()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
554 a = parser.add_argument
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
555 a('--infile',default='')
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
556 a('--outfile',default=None)
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
557 args = parser.parse_args()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
558 inp = args.infile
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
559 outp = args.outfile
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
560 i = open(inp,'r').readlines()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
561 o = open(outp,'w')
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
562 for row in i:
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
563 rs = row.rstrip()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
564 rs = list(rs)
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
565 rs.reverse()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
566 o.write(''.join(rs))
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
567 o.write('\n')
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
568 o.close()
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
569
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
570 R script to draw some plots - use a collection.
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
571
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 \# note this script takes NO input because it generates random data
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
576 dir.create('plots')
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
577 for (i in 1:10) {
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
578 foo = runif(100)
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
579 bar = rnorm(100)
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
580 bar = foo + 0.05*bar
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
581 pdf(paste('plots/yet',i,"anotherplot.pdf",sep='_'))
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
582 plot(foo,bar,main=paste("Foo by Bar plot \#",i),col="maroon", pch=3,cex=0.6)
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
583 dev.off()
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
584 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
585 bar = as.matrix(foo)
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
586 pdf(paste('plots/yet',i,"anotherheatmap.pdf",sep='_'))
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
587 heatmap(bar,main='Random Heatmap')
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
588 dev.off()
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
589 }
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
590
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
591
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
592
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
593 Paper_
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
594
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
595 *Licensing*
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
596
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
597 Copyright Ross Lazarus (ross period lazarus at gmail period com) May 2012
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
598 All rights reserved.
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
599 Licensed under the LGPL_
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
600
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
601 .. _LGPL: http://www.gnu.org/copyleft/lesser.html
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
602 .. _GTF: https://github.com/fubar2/toolfactory
126
def0f754ee1b Uploaded
fubar
parents: 123
diff changeset
603 .. _Paper: https://academic.oup.com/bioinformatics/article/28/23/3139/192853
121
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
604
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
605
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
606 </help>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
607 <citations>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
608 <citation type="doi">10.1093/bioinformatics/bts573</citation>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
609 </citations>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
610 </tool>
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
611
2050b2475ae5 Uploaded
fubar
parents:
diff changeset
612