comparison data_manager/kraken2_build_database.xml @ 0:c13785ca6192 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_build_kraken2_database/ commit 39e87c095e426fc3f147d55de0434cd54ae0354a
author nate
date Wed, 06 Nov 2024 20:00:39 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:c13785ca6192
1 <?xml version="1.0"?>
2 <tool id="kraken2_build_database" name="Kraken2" tool_type="manage_data" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
3 <description>database builder</description>
4 <macros>
5 <token name="@TOOL_VERSION@">2.1.3</token>
6 <token name="@VERSION_SUFFIX@">3</token>
7 <token name="@PROFILE@">22.01</token>
8 <xml name="common_params">
9 <param name="kmer_len" type="integer" value="35" label="K-mer length in BP" />
10 <param name="minimizer_len" type="integer" value="31" label="Minimizer length" />
11 <param name="minimizer_spaces" type="integer" value="7" label="Minimizer spaces" />
12 <param name="load_factor" type="float" value="0.7" min="0" max="1" label="Load factor" help="Proportion of the hash table to be populated" />
13 <param name="clean" type="boolean" truevalue="--clean" falsevalue="" checked="true" label="Clean up extra files" />
14 </xml>
15 <xml name="viral">
16 <option value="viral">Viral (viral; ~0.5 GB)</option>
17 </xml>
18 <xml name="minusb">
19 <option value="minusb">MinusB (archaea, viral, plasmid, human, UniVec_Core; ~8 GB)</option>
20 </xml>
21 <xml name="standard">
22 <option value="standard">Standard-Full (archaea, bacteria, viral, plasmid, human, UniVec_Core; ~50 GB)</option>
23 </xml>
24 <xml name="standard_08gb">
25 <option value="standard_08gb">Standard-8 (Standard with DB capped at 8 GB)</option>
26 </xml>
27 <xml name="standard_16gb">
28 <option value="standard_16gb">Standard-16 (Standard with DB capped at 16 GB)</option>
29 </xml>
30 <xml name="pluspf">
31 <option value="pluspf">PlusPF (Standard plus protozoa and fungi; ~50 GB)</option>
32 </xml>
33 <xml name="pluspf_08gb">
34 <option value="pluspf_08gb">PlusPF-8 (PlusPF with DB capped at 8 GB; ~7.5 GB)</option>
35 </xml>
36 <xml name="pluspf_16gb">
37 <option value="pluspf_16gb">PlusPF-16 (PlusPF with DB capped at 16 GB; ~15 GB)</option>
38 </xml>
39 <xml name="pluspfp">
40 <option value="pluspfp">PlusPFP (Standard plus protozoa, fungi and plant; ~129 GB)</option>
41 </xml>
42 <xml name="pluspfp_08gb">
43 <option value="pluspfp_08gb">PlusPFP-8 (PlusPFP with DB capped at 8 GB; ~7.5 GB)</option>
44 </xml>
45 <xml name="pluspfp_16gb">
46 <option value="pluspfp_16gb">PlusPFP-16 (PlusPFP with DB capped at 16 GB; ~15 GB)</option>
47 </xml>
48 </macros>
49 <xrefs>
50 <xref type="bio.tools">kraken2</xref>
51 </xrefs>
52 <requirements>
53 <requirement type="package" version="@TOOL_VERSION@">kraken2</requirement>
54 <requirement type="package" version="3.13">python</requirement>
55 </requirements>
56 <version_command>kraken2 -version | head -n 1 | awk '{print $NF}'</version_command>
57 <command detect_errors="exit_code"><![CDATA[
58 python '$__tool_directory__/kraken2_build_database.py'
59 '$out_file'
60 --database-type '$database_type.database_type'
61 #if $database_type.database_type == "standard_local_build"
62 --threads \${GALAXY_SLOTS:-1}
63 --kmer-len $database_type.kmer_len
64 --minimizer-len $database_type.minimizer_len
65 --minimizer-spaces $database_type.minimizer_spaces
66 --load-factor $database_type.load_factor
67 $database_type.clean
68 #else if $database_type.database_type == "standard_prebuilt"
69 --prebuilt-db '$database_type.prebuild.prebuilt_db'
70 --prebuilt-date '$database_type.prebuild.prebuilt_date'
71 #else if $database_type.database_type == "minikraken"
72 --minikraken2-version '$database_type.minikraken2_version'
73 #else if $database_type.database_type == "special_prebuilt"
74 --prebuilt-db '$database_type.special_prebuild.prebuilt_db'
75 --prebuilt-date '$database_type.special_prebuild.prebuilt_date'
76 #else if $database_type.database_type == "special"
77 --threads \${GALAXY_SLOTS:-1}
78 --special-database-type '$database_type.special_database_type'
79 --kmer-len $database_type.kmer_len
80 --minimizer-len $database_type.minimizer_len
81 --minimizer-spaces $database_type.minimizer_spaces
82 --load-factor $database_type.load_factor
83 $database_type.clean
84 #else if $database_type.database_type == "custom"
85 --threads \${GALAXY_SLOTS:-1}
86 --custom-fasta '$database_type.custom_fasta'
87 --custom-database-name '$database_type.custom_database_name'
88 --custom-source-info '$database_type.custom_source_info'
89 $database_type.skip_maps
90 --kmer-len $database_type.kmer_len
91 --minimizer-len $database_type.minimizer_len
92 --minimizer-spaces $database_type.minimizer_spaces
93 --load-factor $database_type.load_factor
94 $database_type.clean
95 #end if
96 ]]>
97 </command>
98 <inputs>
99 <conditional name="database_type">
100 <param name="database_type" type="select" multiple="false" label="Database Type">
101 <option value="standard_local_build">Standard, Local Build</option>
102 <option value="standard_prebuilt">Pre-Built Refseq indexes</option>
103 <option value="minikraken">MiniKraken</option>
104 <option value="special_prebuilt">Special Pre-Built indexes</option>
105 <option value="special">Special</option>
106 <option value="custom">Custom</option>
107 </param>
108 <when value="standard_local_build">
109 <expand macro="common_params" />
110 </when>
111 <when value="standard_prebuilt">
112 <conditional name="prebuild">
113 <param name="prebuilt_date" type="select" label="Select index build date">
114 <option value="2024-06-05">June 5, 2024</option>
115 <option value="2024-01-12">January 12, 2024</option>
116 <option value="2023-06-05">June 5, 2023</option>
117 <option value="2022-06-07">June 7, 2022</option>
118 <option value="2021-05-17">May 17, 2021</option>
119 <option value="2021-01-27">January 27, 2021</option>
120 <option value="2020-12-02">December 2, 2020</option>
121 <option value="2020-09-19">September 19, 2020</option>
122 </param>
123 <when value="2024-06-05">
124 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
125 <expand macro="viral"/>
126 <expand macro="minusb"/>
127 <expand macro="standard"/>
128 <expand macro="standard_08gb"/>
129 <expand macro="standard_16gb"/>
130 <expand macro="pluspf"/>
131 <expand macro="pluspf_08gb"/>
132 <expand macro="pluspf_16gb"/>
133 <expand macro="pluspfp"/>
134 <expand macro="pluspfp_08gb"/>
135 <expand macro="pluspfp_16gb"/>
136 </param>
137 </when>
138 <when value="2024-01-12">
139 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
140 <expand macro="viral"/>
141 <expand macro="minusb"/>
142 <expand macro="standard"/>
143 <expand macro="standard_08gb"/>
144 <expand macro="standard_16gb"/>
145 <expand macro="pluspf"/>
146 <expand macro="pluspf_08gb"/>
147 <expand macro="pluspf_16gb"/>
148 <expand macro="pluspfp"/>
149 <expand macro="pluspfp_08gb"/>
150 <expand macro="pluspfp_16gb"/>
151 </param>
152 </when>
153 <when value="2023-06-05">
154 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
155 <expand macro="viral"/>
156 <expand macro="minusb"/>
157 <expand macro="standard"/>
158 <expand macro="standard_08gb"/>
159 <expand macro="standard_16gb"/>
160 <expand macro="pluspf"/>
161 <expand macro="pluspf_08gb"/>
162 <expand macro="pluspf_16gb"/>
163 <expand macro="pluspfp"/>
164 <expand macro="pluspfp_08gb"/>
165 <expand macro="pluspfp_16gb"/>
166 </param>
167 </when>
168 <when value="2022-06-07">
169 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
170 <expand macro="viral"/>
171 <expand macro="minusb"/>
172 <expand macro="standard"/>
173 <expand macro="standard_08gb"/>
174 <expand macro="standard_16gb"/>
175 <expand macro="pluspf"/>
176 <expand macro="pluspf_08gb"/>
177 <expand macro="pluspf_16gb"/>
178 <expand macro="pluspfp"/>
179 <expand macro="pluspfp_08gb"/>
180 <expand macro="pluspfp_16gb"/>
181 </param>
182 </when>
183 <when value="2021-05-17">
184 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
185 <expand macro="viral"/>
186 <expand macro="minusb"/>
187 <expand macro="standard"/>
188 <expand macro="standard_08gb"/>
189 <expand macro="standard_16gb"/>
190 <expand macro="pluspf"/>
191 <expand macro="pluspf_08gb"/>
192 <expand macro="pluspf_16gb"/>
193 <expand macro="pluspfp_08gb"/>
194 <expand macro="pluspfp_16gb"/>
195 </param>
196 </when>
197 <when value="2021-01-27">
198 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
199 <expand macro="pluspf"/>
200 <expand macro="pluspf_08gb"/>
201 <expand macro="pluspf_16gb"/>
202 <expand macro="pluspfp_08gb"/>
203 <expand macro="pluspfp_16gb"/>
204 </param>
205 </when>
206 <when value="2020-12-02">
207 <param name="prebuilt_db" type="select" label="Select a prebuilt Refseq index to download">
208 <expand macro="viral"/>
209 <expand macro="minusb"/>
210 <expand macro="standard"/>
211 <expand macro="standard_08gb"/>
212 <expand macro="standard_16gb"/>
213 </param>
214 </when>
215 <when value="2020-09-19">
216 <param name="prebuilt_db" type="select" multiple="false" label="Select a prebuilt Refseq indexes to download">
217 <expand macro="minusb"/>
218 <expand macro="standard"/>
219 <expand macro="standard_08gb"/>
220 <expand macro="standard_16gb"/>
221 <expand macro="pluspf"/>
222 <expand macro="pluspf_08gb"/>
223 <expand macro="pluspf_16gb"/>
224 <expand macro="pluspfp_08gb"/>
225 <expand macro="pluspfp_16gb"/>
226 </param>
227 </when>
228 </conditional>
229 </when>
230 <when value="special_prebuilt">
231 <conditional name="special_prebuild">
232 <param name="special_prebuilt_db" type="select" multiple="false" label="Select pre-built database to download">
233 <option value="eupathdb48_20230407">EuPathDB-46 (April 7, 2023)</option>
234 <option value="eupathdb48_20201113">EuPathDB-46 (November 13, 2020)</option>
235 </param>
236 <when value="eupathdb48_20230407">
237 <param name="prebuilt_db" type="hidden" value="eupathdb48"/>
238 <param name="prebuilt_date" type="hidden" value="2023-04-07"/>
239 </when>
240 <when value="eupathdb48_20201113">
241 <param name="prebuilt_db" type="hidden" value="eupathdb48"/>
242 <param name="prebuilt_date" type="hidden" value="2020-11-13"/>
243 </when>
244 </conditional>
245 </when>
246 <when value="minikraken">
247 <param name="minikraken2_version" type="select" multiple="false" label="Select MiniKraken2 database version to download">
248 <option value="v2">Version 2</option>
249 <option value="v1">Version 1</option>
250 </param>
251 </when>
252 <when value="special">
253 <param name="special_database_type" type="select" multiple="false" label="Select database to build">
254 <option value="greengenes">Greengenes</option>
255 <option value="silva">Silva</option>
256 <option value="rdp">RDP</option>
257 </param>
258 <expand macro="common_params" />
259 </when>
260 <when value="custom">
261 <param name="custom_fasta" type="data" format="fasta" multiple="False" label="Select history item" />
262 <param name="custom_database_name" type="text" label="Name for this database" />
263 <param name="custom_source_info" type="text" label="Database source info" help="Concise description of how this build has been sourced. This description will be appended (in parentheses) to the user-facing name of the build. Example: https://doi.org/10.5281/zenodo.8339822, from v1 assembly_summary.txt sequences" />
264 <param name="skip_maps" type="boolean" truevalue="--skip-maps" falsevalue="" label="Skip downloading accession number to taxid maps during taxonomy download." />
265 <expand macro="common_params" />
266 </when>
267 </conditional>
268 </inputs>
269 <outputs>
270 <data name="out_file" format="data_manager_json" />
271 </outputs>
272 <tests>
273 <test expect_num_outputs="1">
274 <conditional name="database_type">
275 <param name="database_type" value="custom" />
276 <param name="custom_fasta" value="adapter.fa" />
277 <param name="custom_database_name" value="custom_database" />
278 <param name="custom_source_info" value="from adapter.fa test data" />
279 <param name="skip_maps" value="true" />
280 <param name="kmer_len" value="35" />
281 <param name="minimizer_spaces" value="6"/>
282 <param name="load_factor" value="0.7" />
283 <param name="clean" value="true"/>
284 </conditional>
285 <output name="out_file">
286 <assert_contents>
287 <has_text text="kraken2_databases"/>
288 <has_text text="path"/>
289 <has_text text="custom_database (from adapter.fa test data, kmer-len=35, minimizer-len=31, minimizer-spaces=6, load-factor=0.7)"/>
290 </assert_contents>
291 </output>
292 </test>
293 <test>
294 <conditional name="database_type">
295 <param name="database_type" value="standard_prebuilt" />
296 <conditional name="prebuild">
297 <param name="prebuilt_date" value="2022-06-07"/>
298 <param name="prebuilt_db" value="viral"/>
299 </conditional>
300 </conditional>
301 <output name="out_file">
302 <assert_contents>
303 <has_text text="kraken2_databases"/>
304 <has_text text="path"/>
305 <has_text text="Viral"/>
306 <has_text text="_standard_prebuilt_viral_2022-06-07"/>
307 <has_text text="Version"/>
308 <has_text text="Downloaded"/>
309 </assert_contents>
310 </output>
311 </test>
312 <!-- test with latest version -->
313 <test>
314 <conditional name="database_type">
315 <param name="database_type" value="standard_prebuilt" />
316 <conditional name="prebuild">
317 <param name="prebuilt_date" value="2024-01-12"/>
318 <param name="prebuilt_db" value="viral"/>
319 </conditional>
320 </conditional>
321 <output name="out_file">
322 <assert_contents>
323 <has_text text="kraken2_databases"/>
324 <has_text text="path"/>
325 <has_text text="Viral"/>
326 <has_text text="_standard_prebuilt_viral_2024-01-12"/>
327 <has_text text="Version"/>
328 <has_text text="Downloaded"/>
329 </assert_contents>
330 </output>
331 </test>
332 <!-- test with first 2024 version -->
333 <test>
334 <conditional name="database_type">
335 <param name="database_type" value="standard_prebuilt" />
336 <conditional name="prebuild">
337 <param name="prebuilt_date" value="2024-06-05"/>
338 <param name="prebuilt_db" value="viral"/>
339 </conditional>
340 </conditional>
341 <output name="out_file">
342 <assert_contents>
343 <has_text text="kraken2_databases"/>
344 <has_text text="path"/>
345 <has_text text="Viral"/>
346 <has_text text="_standard_prebuilt_viral_2024-06-05"/>
347 <has_text text="Version"/>
348 <has_text text="Downloaded"/>
349 </assert_contents>
350 </output>
351 </test>
352 </tests>
353 <help><![CDATA[
354 Build Kraken2 databases or download `prebuilt Kraken2 RefSeq indexes <https://benlangmead.github.io/aws-indexes/k2>`__
355 ]]></help>
356 <citations>
357 <citation type="doi">10.1186/s13059-019-1891-0</citation>
358 </citations>
359 </tool>