comparison groot.xml @ 0:7af6f7dafd22 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/groot commit 85ca2a9a7b2871674dbb9e53e398e459debca529
author iuc
date Fri, 18 Oct 2024 08:19:42 +0000
parents
children 5d80c24a4f0a
comparison
equal deleted inserted replaced
-1:000000000000 0:7af6f7dafd22
1 <tool id="groot" name="Groot" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
2 <description> align reads to references and weight variation graphs and generate report</description>
3 <macros>
4 <token name="@TOOL_VERSION@">1.1.2</token>
5 <token name="@VERSION_SUFFIX@">0</token>
6 <token name="@PROFILE@">22.05</token>
7 </macros>
8 <xrefs>
9 <xref type="bio.tools">groot</xref>
10 </xrefs>
11 <requirements>
12 <requirement type="package" version="@TOOL_VERSION@">groot</requirement>
13 </requirements>
14 <command detect_errors="exit_code"><![CDATA[
15 set -x pipefail;
16 #set $extension = str($fastq.ext)
17 ln -s -f '${fastq}' 'input.${extension}' &&
18 groot index
19 --msaDir '$groot_db_select.fields.path'
20 --indexDir 'grootIndex'
21 --windowSize $windowSize
22 --kmerSize $kmerSize
23 --maxK $maxK
24 --maxSketchSpan $maxSketchSpan
25 --numPart $numPart
26 --sketchSize $sketchSize
27 &&
28
29 groot align
30 --fastq 'input.${extension}'
31 --indexDir 'grootIndex'
32 --contThresh $contThresh
33 --minKmerCov $minKmerCov
34 --log '$log'
35 $noAlign
36 --processors "\${GALAXY_SLOTS:-1}"
37
38 | groot report
39 --covCutoff '$covCutoff'
40 $lowCov
41 > '$report_out'
42
43 ]]></command>
44 <inputs>
45 <param argument="--fastq" type="data" format="fastqsanger,fastqsanger.gz" label="FASTQ file(s) to align"/>
46 <section name="index" title="Index">
47 <param name="groot_db_select" type="select" label="Groot database">
48 <options from_data_table="groot_database">
49 <validator message="No groot database is available" type="no_options"/>
50 </options>
51 </param>
52 <param argument="--windowSize" type="integer" min="0" value="100" label="Size of window to sketch graph traversals" />
53 <param argument="--kmerSize" type="integer" min="0" value="31" label="Size of k-mer" />
54 <param argument="--maxK" type="integer" min="0" value="40" label="maxK in the LSH Ensemble" />
55 <param argument="--maxSketchSpan" type="integer" min="0" value="4" label="Maximum number of identical neighbouring sketches permitted in any graph traversal" />
56 <param argument="--numPart" type="integer" min="0" value="8" label="Number of partitions in the LSH Ensemble" />
57 <param argument="--sketchSize" type="integer" min="0" value="21" label="Size of MinHash sketch" />
58 </section>
59 <section name="align" title="Align">
60 <param argument="--contThresh" type="float" min="0" max="1.0" value="0.99" label="Containment threshold for the LSH ensemble" />
61 <param argument="--minKmerCov" type="integer" min="0" value="1" label="Minimum number of k-mers covering each base of a graph segment" />
62 <param argument="--noAlign" type="boolean" truevalue="" falsevalue="--noAlign" label="Perform exact alignment?"
63 help="If not, graphs will still be weighted using approximate read mappings"/>
64 </section>
65 <section name="report" title="Report">
66 <param argument="--covCutoff" type="float" min="0" max="1.0" value="0.97" label="Coverage cutoff for reporting ARGs" />
67 <param argument="--lowCov" type="boolean" checked="false" truevalue="--lowCov" falsevalue="" label="Report ARGs which may not be covered at the 5'/3' ends"
68 help="If 'Yes', overrides --covCutoff option"/>
69 </section>
70 </inputs>
71 <outputs>
72 <data name="log" format="txt" label="${tool.name} on ${on_string}: Log"/>
73 <data name="report_out" format="tabular" label="${tool.name} on ${on_string}: Report"/>
74 </outputs>
75 <tests>
76 <test expect_num_outputs="2">
77 <param name="fastq" value="bla-b7-150bp-5x.fq" ftype="fastq"/>
78 <section name="index">
79 <param name="groot_db_select" value="resfinder.90" />
80 <param name="windowSize" value="150"/>
81 <param name="kmerSize" value="31"/>
82 <param name="maxK" value="20"/>
83 <param name="maxSketchSpan" value="30"/>
84 <param name="numPart" value="8"/>
85 <param name="sketchSize" value="20"/>
86 </section>
87 <section name="align">
88 <param name="contThresh" value="0.99"/>
89 <param name="minKmerCov" value="1" />
90 <param name="noAlign" value=""/>
91 </section>
92 <section name="report">
93 <conditional name="arg_report">
94 <param name="criteria" value="cutoff" />
95 <param name="covCutoff" value="0.97" />
96 </conditional>
97 </section>
98 <output name="report_out" ftype="tabular">
99 <assert_contents>
100 <has_text text="blaB-7_1_AF189304"/>
101 <has_n_lines n="1"/>
102 <has_n_columns n="4"/>
103 </assert_contents>
104 </output>
105 <output name="log" ftype="txt">
106 <assert_contents>
107 <has_text text="version"/>
108 <has_text text="1.1.2"/>
109 </assert_contents>
110 </output>
111 </test>
112 <test expect_num_outputs="2">
113 <param name="fastq" value="argannot_light-150bp-10000-reads.fq.gz" ftype="fastq.gz"/>
114 <section name="index">
115 <param name="groot_db_select" value="arg-annot.90" />
116 <param name="windowSize" value="150"/>
117 <param name="kmerSize" value="41"/>
118 <param name="maxK" value="4"/>
119 <param name="maxSketchSpan" value="30"/>
120 <param name="numPart" value="8"/>
121 <param name="sketchSize" value="21"/>
122 </section>
123 <section name="align">
124 <param name="contThresh" value="0.99"/>
125 <param name="minKmerCov" value="1" />
126 <param name="noAlign" value=""/>
127 </section>
128 <section name="report">
129 <param name="covCutoff" value="0.97" />
130 <param name="lowCov" value="True"/>
131 </section>
132 <output name="report_out" ftype="tabular">
133 <assert_contents>
134 <has_text text="argannot~~~(Bla)VIM-9~~~AY524988:1-801"/>
135 <has_text text="argannot~~~(Bla)VIM-20~~~GQ414736:1-801"/>
136 <has_n_lines n="5"/>
137 <has_n_columns n="4"/>
138 </assert_contents>
139 </output>
140 <output name="log" ftype="txt">
141 <assert_contents>
142 <has_text text="version"/>
143 <has_text text="1.1.2"/>
144 </assert_contents>
145 </output>
146 </test>
147 </tests>
148 <help><![CDATA[
149 **What it does**
150
151 GROOT is a tool to profile Antibiotic Resistance Genes (ARGs) in metagenomic samples.
152
153 The method combines variation graph representation of gene sets with an LSH Forest
154 indexing scheme to allow for fast classification of metagenomic reads using
155 similarity-search queries. Subsequent hierarchical local alignment of classified reads
156 against graph traversals facilitates accurate reconstruction of full-length gene sequences
157 using a scoring scheme.
158
159 The main advantages of GROOT over existing tools are:
160
161 - quick classification of reads to candidate ARGs
162 - accurate annotation of full-length ARGs
163 - can run on a laptop in minutes
164
165 GROOT aligns reads to ARG variation graphs, producing an alignment file that contains
166 the graph traversals possible for each query read. The alignment file is then used to
167 generate a simple resistome profile report.
168
169 **Output**
170
171 GROOT will output an ARG alignment file (in BAM format) that contains the graph traversals possible for each query read; the alignment file is then used by GROOT to generate a resistome profile.
172
173 ]]></help>
174 <citations>
175 <citation type="doi">10.1093/bioinformatics/bty387</citation>
176 </citations>
177 </tool>