annotate home/ross/galaxy/tools/tool_makers/toolfactory/rgToolFactory2.xml @ 47:e95d9fe5ab50 draft

adding tests and local installation
author fubar
date Sun, 23 Aug 2020 21:02:03 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
1 <tool id="rgTF2" name="toolfactory" version="2.00" profile="16.04" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
2 <description>Scripts into tools</description>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
3 <macros>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
4 <xml name="io">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
5 <repeat name="history_inputs" title="Add a data file from your history to pass in to the script. Use the '+' button as needed"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
6 help="USE SMALL SAMPLES because these will be used for the new tool's test. The names will become a history item selector as input for users of the new tool you are making">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
7 <param name="input_files" type="data" format="data" label="Select an input file from your history" optional="true" multiple="false"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
8 help=""/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
9 <param name="input_formats" type="select" multiple="true" label="Select the datatype(s) that your tool/script accepts as input"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
10 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
11 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
12 <column name="value" index="0"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
13 </options>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
14 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
15 <param name="input_label" type="text" value="" label="This will become the user prompt for the form so please make it informative"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
16 help="Note that '~~~' is an internal delimiter so must not appear in this text field - please work around this technical limitation" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
17 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
18 <valid initial="string.printable"> <remove value='~~~'/> </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
19 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
20 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
21 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
22 <param name="input_help" type="text" value="parameter_help" label="This will become help text on the form."
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
23 help="Note that three consecutive ~ cannot be used in this text field - please work around this technical limitation">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
24 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
25 <valid initial="string.printable"> <remove value='~~~'/> </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
26 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
27 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
28 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
29 <param name="input_CL" type="text" label="Positional: ordinal integer. Argparse: argument name. STDIN if the executable/script expects it"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
30 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="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
31 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
32 </repeat>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
33 <repeat name="history_outputs" title="Add a tool run output file to the user's history from your tool - Use the '+' button to add as many as needed"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
34 help="The name will become a history item for users of the new tool you are making containing one of it's outputs">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
35 <param name="history_name" type="text" label="Name for this output to appear in new history" optional="false" help=""/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
36 <param name="history_format" type="select" multiple="false" label="Select the datatype for this output"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
37 help="If your datatype is not listed here, it has to be added in galaxy's datatypes_conf.xml" value="tabular">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
38 <options from_parameter="tool.app.datatypes_registry.upload_file_formats">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
39 <column name="value" index="0"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
40 </options>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
41 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
42 <param name="history_CL" type="text" label="Positional: ordinal integer. Argparse: argument name expected for this output parameter. Use STDOUT if '>' required."
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
43 help="If positional parameters, enter the integer ordinal expected for this parameter. If Argparse style, '--' will be prepended or '-' if single character" value=""/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
44 </repeat>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
45 </xml>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
46 <xml name="additparam">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
47 <param name="edit_params" type="select" display="radio" label="Add any additional parameters to the generated tool form so they are user editable?"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
48 help="If no (default), 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">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
49 <option value="yes">Yes, allow user to edit all additional parameters on the generated tool form</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
50 <option value="no" selected="true">No - use the fixed values for all additional parameters - no user editing</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
51 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
52
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
53 <repeat name="additional_parameters" title="Pass additional parameters to the script"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
54 help="See examples below to see how these can be parsed by scripts in the various languages">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
55 <param name="param_name" type="text" value="parameter_name" label="Choose the name for this parameter">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
56 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
57 <valid initial="string.letters,string.digits"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
58 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
59 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
60 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
61 <param name="param_type" type="select" label="Select the type for this parameter">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
62 <option value="text" selected="true">text</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
63 <option value="integer">integer</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
64 <option value="float">float</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
65 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
66 <param name="param_value" type="text" value="" label="Enter this parameter's default value"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
67 help="Note that '~~~' is an internal delimiter must not appear in this text field - please work around this technical limitation" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
68 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
69 <valid initial="string.printable"> <remove value='~~~'/> </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
70 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
71 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
72 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
73 <param name="param_label" type="text" value="parameter_label" label="Enter this parameter's label for the form"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
74 help="Note that '~~~' is an internal delimiter so must not appear in this text field - please work around this technical limitation" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
75 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
76 <valid initial="string.printable"> <remove value='~~~'/> </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
77 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
78 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
79 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
80 <param name="param_help" type="text" value="parameter_help" label="Help for this parameter"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
81 help="Note that three consecutive ~ cannot be used in this text field - please work around this technical limitation" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
82 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
83 <valid initial="string.printable"> <remove value='~~~'/> </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
84 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
85 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
86 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
87 <param name="param_CL" type="text" label="Positional ordinal or argparse argument name"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
88 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="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
89 <param name="param_CLprefixed" type="text" label="Override the generated default argparse name prefix if not empty - eg ----foo if needed"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
90 help="Some targets like Planemo expect an unadorned action like 'test' before --galaxy_root and so on. " value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
91
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
92 </repeat>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
93 </xml>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
94 <xml name="builtin_dynpar">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
95 <param name="exe_package" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
96 <param name="exe_package_version" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
97 <param name="cl_override" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
98 <param name="interpreter_version" type="hidden" value=""/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
99 <param name="dependencies" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
100 <param name="dynScript" label="Cut and paste the script to be executed here" type="text" value="Script goes here" area="True"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
101 help="If there are parameters, either positional or argparse style, the script must parse and use them appropriately">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
102 <sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
103 <valid initial="string.printable">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
104 </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
105 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
106 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
107 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
108 </xml>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
109 <xml name="dynpar">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
110 <param name="exe_package" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
111 <param name="exe_package_version" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
112 <param name="cl_override" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
113 <param name="dependencies" type="text" value="" label="List additional dependencies - e.g. 'planemo, ephemeris'" help="These will be managed by Conda" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
114 <param name="interpreter_version" type="text" value=""
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
115 label="Specific interpreter version to match dependency (Conda) repositories - e.g. for python '3.8.5' Latest if empty"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
116 <param name="dynScript" label="Cut and paste the script to be executed here" type="text" value="Script goes here" area="True"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
117 help="If there are parameters, either positional or argparse style, the script must parse and use them appropriately">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
118 <sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
119 <valid initial="string.printable">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
120 </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
121 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
122 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
123 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
124 </xml>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
125 </macros>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
126 <requirements>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
127 <requirement type="package">python</requirement>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
128 <requirement type="package">galaxyxml</requirement>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
129 <requirement type="package">planemo</requirement>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
130 <requirement type="package">yaml</requirement>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
131 <requirement type="package">lxml</requirement>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
132 </requirements>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
133 <command interpreter="python"><![CDATA[
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
134 #import os
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
135 #set dev_env = os.environ.get('GALAXY_DEVELOPMENT_ENVIRONMENT', '0') == '1'
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
136 #if not $dev_env and ( $__user_email__ not in $__admin_users__ ):
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
137 $__tool_directory__/rgToolFactory2.py --bad_user $__user_email__
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
138 #else:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
139 $__tool_directory__/rgToolFactory2.py
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
140 --dependencies "$interexe.dependencies"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
141 --runmode "$interexe.interpreter"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
142 #if len(str($interexe.cl_override)) > 0:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
143 --cl_override "$interexe.cl_override"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
144 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
145 #if str($interexe.interpreter)=="Executable" or str($interexe.interpreter)=="system":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
146 --exe_package="$interexe.exe_package"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
147 #if $interexe.exe_package_version:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
148 --exe_package_version="$interexe.exe_package_version"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
149 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
150 #else:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
151 --interpreter_name="$interexe.interpreter" --script_path "$runme"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
152 #if str($interexe.interpreter_version) != 'None':
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
153 --interpreter_version="$interexe.interpreter_version"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
154 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
155 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
156 --tool_name="$tool_name" --user_email="$__user_email__" --citations="$citeme" --parampass="$ppass.parampass"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
157 #if str($makeMode.make_Tool)=="yes":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
158 --planemo_test "$makeMode.planemo_test"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
159 --make_Tool="$makeMode.make_Tool"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
160 --tool_desc="$makeMode.tool_desc"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
161 --tool_version="$makeMode.tool_version"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
162 --help_text="$helpme"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
163 --new_tool="$new_tool"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
164 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
165 #if $ppass.parampass != '0':
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
166 #if str($ppass.edit_params) == "yes":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
167 --edit_additional_parameters
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
168 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
169 #for apar in $ppass.additional_parameters:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
170 --additional_parameters="$apar.param_name~~~$apar.param_value~~~$apar.param_label~~~$apar.param_help~~~$apar.param_type~~~$apar.param_CL~~~$apar.param_CLprefixed"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
171 #end for
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
172 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
173 #for $intab in $ppass.history_inputs:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
174 --input_files="$intab.input_files~~~$intab.input_CL~~~$intab.input_formats~~~$intab.input_label~~~$intab.input_help"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
175 #end for
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
176 #for $otab in $ppass.history_outputs:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
177 --output_files "$otab.history_name~~~$otab.history_format~~~$otab.history_CL"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
178 #end for
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
179 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
180 ]]></command>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
181 <configfiles>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
182 <configfile name="runme">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
183
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
184 #if $interexe.interpreter != "Executable" and $interexe.interpreter != "system" :
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
185 ${interexe.dynScript}
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
186 #else:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
187 $tool_name
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
188 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
189 </configfile>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
190 <configfile name="helpme">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
191 #if $makeMode.make_Tool == "yes":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
192 ${makeMode.help_text}
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
193 #else
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
194 $tool_name help goes here
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
195 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
196 </configfile>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
197 <configfile name="citeme">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
198 #if $makeMode.make_Tool == "yes":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
199 #for $citation in $makeMode.citations:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
200 #if $citation.citation_type.type == "bibtex":
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
201 **ENTRY**bibtex
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
202 ${citation.citation_type.bibtex}
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
203 #else
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
204 **ENTRY**doi
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
205 ${citation.citation_type.doi}
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
206 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
207 #end for
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
208 #end if
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
209 </configfile>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
210 </configfiles>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
211 <inputs>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
212
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
213 <param name="tool_name" type="text" value="tool1" label="New tool ID and title for outputs"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
214 help="This will become the toolshed repository name so choose thoughtfully to avoid namespace clashes with other tool writers. lower case, digits and underscores only">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
215 <sanitizer invalid_char="">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
216 <valid initial="string.letters,string.digits">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
217 <add value="_"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
218 </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
219 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
220 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
221 <conditional name="interexe">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
222 <param name="interpreter" type="select" label="Tool model: For a managed external dependency, choose 'Executable', or choose an interpreter for a script"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
223 help = "If executable, the supplied package will become a requirement so must match the tool dependency resolver package name - conda is the default.">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
224 <option value="Executable" selected="true">An executable binary to be provided and managed by the Conda dependency management subsystem</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
225 <option value="python">Use Python to run the script pasted below</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
226 <option value="r-base">Use R (Rscript) to run the script pasted below</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
227 <option value="perl">Use a depency managed Perl to run the script pasted below</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
228 <option value="bash">Use the system bash to run the script pasted below</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
229 <option value="sh">Use sh to run the script pasted below</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
230 <option value="system" >Use a different system executable such as sed</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
231 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
232 <when value="Executable">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
233 <param name="exe_package" type="text" value="" label="Executable/package name for Ddependency manager - e.g. 'bwa'" optional="false"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
234 <param name="exe_package_version" type="text" value="" label="Executable/package version to match dependency (Conda) repositories - e.g. for bwa='0.7.17'. Latest if empty" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
235 <param name="cl_override" type="text" value="" label="Command line override prefix - e.g. for ephemeris prepend the specific function such as 'workflow_install'"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
236 help="Some packages like ephemerisand planemo require a sub-command - eg planemo test - before parameters are passed. Supply that here"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
237 <param name="dependencies" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
238 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
239 <when value="system">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
240 <param name="dependencies" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
241 <param name="exe_package" type="text" value="" label="System executable to run - e.g. awk"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
242 <param name="exe_package_version" type="hidden" value="" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
243 <param name="cl_override" type="text" value="" label="Command line override prefix - e.g. for sed or awk, prepend this before the i/o parameters"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
244 help="This may help finesse a command line - inputs and output will be passed as you specify below"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
245 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
246 <when value = "python">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
247 <expand macro="dynpar" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
248 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
249 <when value = "r-base">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
250 <expand macro="dynpar" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
251 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
252 <when value = "perl">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
253 <expand macro="dynpar" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
254 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
255 <when value = "bash">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
256 <expand macro="builtin_dynpar" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
257 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
258 <when value = "sh">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
259 <expand macro="builtin_dynpar" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
260 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
261 </conditional>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
262 <conditional name = "ppass">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
263
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
264 <param name="parampass" type="select" display="radio" label="Command line parameter passing method to use">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
265 <option value="argparse" selected="true">Argparse style: passed in the form of '--[clname] [value]'</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
266 <option value="positional">Positional: Passed in the order of positional ordinals '...foo.bam bar.idx zot.xls'</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
267 <option value="0">No parameters needed because tool reads selected input file from STDIN and writes STDOUT with new history output"</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
268 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
269 <when value = "argparse">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
270 <expand macro="io" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
271 <expand macro="additparam" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
272 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
273 <when value = "positional">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
274 <expand macro="io" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
275 <expand macro="additparam" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
276 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
277 <when value = "0">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
278 <expand macro="io"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
279 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
280 </conditional>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
281 <conditional name="makeMode">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
282 <param name="make_Tool" type="select" display="radio" label="Generate new tool as a tar.gz file ready to upload to a toolshed repository"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
283 help="Generate a toolshed archive - upload to a toolshed from where it can be auto-installed via the Galaxy admin functions" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
284 <option value="yes">Generate a Galaxy ToolShed compatible toolshed.gz</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
285 <option value="" selected="true">No. Just run the script please</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
286 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
287 <when value = "yes">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
288 <param name="planemo_test" type="select" display="radio" label="Use planemo to test the new tool (takes a while..)"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
289 help="Planemo will test the tool, upload it to the local toolshed and install to this Galaxy for additional testing" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
290 <option value="yes" selected="true">Test with planemo and install to this Galaxy if passes</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
291 <option value="">No test/install</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
292 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
293 <param name="tool_version" label="Tool Version - bump this to warn users trying to redo old analyses" type="text" value="0.01"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
294 help="If you change your script and regenerate the 'same' tool, you should inform Galaxy (and users) by changing (bumping is traditional) this number"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
295 <param name="tool_desc" label="Tool Description" type="text" value=""
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
296 help="Supply a brief tool description for the Galaxy tool menu entry (optional - appears after the tool name)" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
297 <param name="help_text" label="Tool form documentation and help text for users" type="text" area="true"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
298 value="**What it Does**"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
299 help="Supply the brief user documentation to appear on the new tool form as reStructured text - http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
300 <sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
301 <valid initial="string.printable">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
302 </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
303 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
304 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
305 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
306 <repeat name="citations" title="Citation">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
307 <conditional name="citation_type">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
308 <param name="type" type="select" display="radio" label="Citation Type">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
309 <option value="doi">DOI</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
310 <option value="bibtex">BibTeX</option>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
311 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
312 <when value="doi">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
313 <param name="doi" label="DOI" type="text" value=""
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
314 help="Supply a DOI (e.g. doi: 10.1111/j.1740-9713.2007.00258.x) that should be cited when this tool is used in published research." />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
315 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
316 <when value="bibtex">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
317 <param name="bibtex" label="BibTex" type="text" area="true"
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
318 help="Supply a BibTex entry that should be cited when this tool is used in published research." value="" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
319 <sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
320 <valid initial="string.printable">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
321 </valid>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
322 <mapping initial="none"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
323 </sanitizer>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
324 </param>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
325 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
326 </conditional>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
327 </repeat>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
328 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
329 <when value = "">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
330 </when>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
331 </conditional>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
332 </inputs>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
333 <outputs>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
334
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
335 <data format="tgz" name="new_tool" label="${tool_name}_toolshed.tgz" >
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
336 <filter>makeMode['make_Tool'] == "yes"</filter>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
337 </data>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
338
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
339 <collection name="TF_run_report" type="list" label="${tool_name} outputs">
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
340 <discover_datasets pattern="__name_and_ext__" directory="TF_run_report_tempdir" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
341 </collection>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
342
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
343
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
344 </outputs>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
345 <tests>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
346 <test>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
347 <param name="input_files" value="input1_sample" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
348 <param name="input_CL" value="1" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
349 <param name="input_formats" value="txt" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
350 <param name="input_label" value="input" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
351 <param name="input_help" value="help" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
352 <param name="tool_name" value="pyrevpos" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
353 <param name="parampass" value="positional" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
354 <param name="make_Tool" value="yes" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
355 <param name="tool_version" value="0.01" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
356 <param name="tool_desc" value="positional reverse" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
357 <param name="help_text" value="help text goes here" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
358 <param name="interpreter" value="python"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
359 <param name="history_name" value="output2_sample" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
360 <param name="history_format" value="txt" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
361 <param name="history_CL" value="2" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
362 <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()"/>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
363 <output name="new_tool" file="toolfactory_pyrevpos_tgz_sample" compare="sim_size" delta="6000" />
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
364 <!-- <output name="output" file="output2_sample" ftype="txt" compare="diff" lines_diff = "10" /> -->
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
365 </test>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
366 </tests>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
367 <help>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
368
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
369 .. class:: warningmark
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
370
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
371 **Details and attribution**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
372 (see GTF_)
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
373
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
374 **Local Admins ONLY**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
375 Only users whose IDs found in the local admin_user configuration setting in universe_wsgi.ini can run this tool.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
376
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
377 **If you find a bug**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
378 Please raise an issue, or even better, submit a pull request fixing it, on the github repository GTF_
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
379
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
380 **What it does**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
381 This tool optionally generates normal workflow compatible first class Galaxy tools
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
382
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
383 Generated tools can run existing binary packages that become requirements, existing scripts, or new scripts pasted into this tool form.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
384 Pasted scripts are written so they are part of the new tool and cannot be adjusted by the downstream user.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
385 Binary packages are managed by the dependency subsystem - conda usually, so anything in bioconda or conda_forge is available for example.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
386
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
387 Any number of parameters can be built into the new tool form for passing in to the script or executable at runtime.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
388 These can be editable by the downstream user or baked in.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
389
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
390 When you run this tool, your executable or script and supplied parameter values will be run to produce a canonical
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
391 set of outputs - these are used to construct a test for the new tool.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
392
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
393 If tool generation is required, a new tarball compatible with any Galaxy toolshed is created.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
394 It can be unpacked in your galaxy/tools directory and manually added to tool_conf.xml, or
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
395 installed into any toolshed from where it can be installed into your Galaxy.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
396
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
397
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
398 .. class:: warningmark
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
399
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
400 **Note to system administrators**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
401 This tool offers *NO* built in protection against malicious scripts. It should only be installed on private/personnal Galaxy instances.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
402 Admin_users will have the power to do anything they want as the Galaxy user if you install this tool.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
403
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
404 .. class:: warningmark
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
405
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
406 **Use on public servers** is STRONGLY discouraged for obvious reasons
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
407
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
408 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.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
409 We recommend that you follow the good code hygiene practices associated with safe toolshed practices.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
410
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
411 Here's a sample python script that can be cut and pasted into the tool form, suitable for positional parameter passing:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
412
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
413 ::
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
414
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
415 # reverse order of text by row
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
416 import sys
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
417 inp = sys.argv[1]
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
418 outp = sys.argv[2]
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
419 i = open(inp,'r').readlines()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
420 o = open(outp,'w')
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
421 for row in i:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
422 rs = row.rstrip()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
423 rs = list(rs)
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
424 rs.reverse()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
425 o.write(''.join(rs))
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
426 o.write('\n')
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
427 o.close()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
428
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
429 With argparse style parameters:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
430
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
431 ::
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
432
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
433 # reverse order of text by row
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
434 import argparse
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
435 parser = argparse.ArgumentParser()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
436 a = parser.add_argument
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
437 a('--infile',default='')
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
438 a('--outfile',default=None)
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
439 args = parser.parse_args()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
440 inp = args.infile
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
441 outp = args.outfile
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
442 i = open(inp,'r').readlines()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
443 o = open(outp,'w')
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
444 for row in i:
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
445 rs = row.rstrip()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
446 rs = list(rs)
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
447 rs.reverse()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
448 o.write(''.join(rs))
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
449 o.write('\n')
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
450 o.close()
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
451
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
452
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
453 Paper_ :
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
454
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
455 Creating re-usable tools from scripts: The Galaxy Tool Factory
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
456 Ross Lazarus; Antony Kaspi; Mark Ziemann; The Galaxy Team
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
457 Bioinformatics 2012; doi: 10.1093/bioinformatics/bts573
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
458
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
459 **Licensing**
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
460
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
461 Copyright Ross Lazarus (ross period lazarus at gmail period com) May 2012
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
462 All rights reserved.
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
463 Licensed under the LGPL_
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
464
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
465 .. _LGPL: http://www.gnu.org/copyleft/lesser.html
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
466 .. _GTF: https://github.com/fubar2/toolfactory
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
467 .. _Paper: http://bioinformatics.oxfordjournals.org/cgi/reprint/bts573
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
468
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
469
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
470 </help>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
471 <citations>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
472 <citation type="doi">10.1093/bioinformatics/bts573</citation>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
473 </citations>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
474 </tool>
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
475
e95d9fe5ab50 adding tests and local installation
fubar
parents:
diff changeset
476