comparison funannotate_annotate.xml @ 7:f6482e570d32 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/funannotate commit 9e3708d04faea0f1be4ea8918e859d6f2c7eb31d
author iuc
date Wed, 26 Jun 2024 09:37:48 +0000
parents c8eccad1b953
children 51ca9670dcd1
comparison
equal deleted inserted replaced
6:c8eccad1b953 7:f6482e570d32
1 <tool id="funannotate_annotate" name="Funannotate functional" profile="20.01" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@"> 1 <tool id="funannotate_annotate" name="Funannotate functional" profile="20.01" version="@TOOL_VERSION@+galaxy5">
2 <description>annotation</description> 2 <description>annotation</description>
3 <macros> 3 <macros>
4 <import>macros.xml</import> 4 <import>macros.xml</import>
5 </macros> 5 </macros>
6 <expand macro="biotools" />
6 <requirements> 7 <requirements>
7 <expand macro="requirements" /> 8 <expand macro="requirements" />
8 </requirements> 9 </requirements>
9 <version_command>funannotate check --show-versions</version_command> 10 <version_command>funannotate check --show-versions</version_command>
10 <command><![CDATA[ 11 <command><![CDATA[
23 --fasta '${input.fasta}' 24 --fasta '${input.fasta}'
24 --species '${input.species}' 25 --species '${input.species}'
25 #end if 26 #end if
26 27
27 --out output 28 --out output
29 --tmpdir "\${_GALAXY_JOB_TMP_DIR:-/tmp}"
28 30
29 --database '$database.fields.path' 31 --database '$database.fields.path'
30 32
31 #if $sbt: 33 #if $sbt:
32 --sbt '${sbt}' 34 --sbt '${sbt}'
64 --fix '${fix}' 66 --fix '${fix}'
65 #end if 67 #end if
66 #if $remove: 68 #if $remove:
67 --remove '${remove}' 69 --remove '${remove}'
68 #end if 70 #end if
69 71 --header_length $header_length
70 --cpus \${GALAXY_SLOTS:-2} 72 --cpus \${GALAXY_SLOTS:-2}
71 73
72 && 74 &&
73 75
74 mv output/annotate_results/*.gbk out.gbk && 76 ## Funannotate sometimes leaves multiple *part.tbl and *part.sqn files:
75 mv output/annotate_results/*.annotations.txt out.annotations.txt && 77 ## https://github.com/nextgenusfs/funannotate/issues/777
76 mv output/annotate_results/*.contigs.fsa out.contigs.fsa && 78 ## The partial tbl files are combined by funannotate and are deleted below.
77 mv output/annotate_results/*.agp out.agp && 79 ## The sqn files are discrete and are collected with discover_datasets.
78 mv output/annotate_results/*.tbl out.tbl && 80 find output/annotate_results
79 mv output/annotate_results/*.sqn out.sqn && 81 -regex ".*part_[0-9]+\.\(tbl\)$"
80 mv output/annotate_results/*.scaffolds.fa out.scaffolds.fa && 82 -delete
81 mv output/annotate_results/*.proteins.fa out.proteins.fa && 83
82 mv output/annotate_results/*.mrna-transcripts.fa out.mrna-transcripts.fa &&
83 mv output/annotate_results/*.cds-transcripts.fa out.cds-transcripts.fa &&
84 mv output/annotate_results/*.gff3 out.gff3 &&
85 mv output/annotate_results/*.discrepency.report.txt out.discrepency.report.txt &&
86 mv output/annotate_results/*.stats.json out.stats.json
87 ]]></command> 84 ]]></command>
88 <inputs> 85 <inputs>
89 86
90 <conditional name="input"> 87 <conditional name="input">
91 <param name="input_type" type="select" label="Input format"> 88 <param name="input_type" type="select" label="Input format">
102 <validator type="empty_field" /> 99 <validator type="empty_field" />
103 </param> 100 </param>
104 </when> 101 </when>
105 </conditional> 102 </conditional>
106 103
107
108
109 <param name="database" label="Funannotate database" type="select"> 104 <param name="database" label="Funannotate database" type="select">
110 <options from_data_table="funannotate"> 105 <options from_data_table="funannotate">
111 <column name="value" index="0" /> 106 <column name="value" index="0" />
112 <column name="name" index="1" /> 107 <column name="name" index="1" />
113 <column name="path" index="3" /> 108 <column name="path" index="3" />
134 129
135 <param argument="--rename" type="text" label="locus_tag from NCBI to rename GFF gene models with" /> 130 <param argument="--rename" type="text" label="locus_tag from NCBI to rename GFF gene models with" />
136 <param argument="--fix" type="data" format="tabular" optional="true" label="Gene/Product names fixed" help="TSV: GeneID Name Product" /> 131 <param argument="--fix" type="data" format="tabular" optional="true" label="Gene/Product names fixed" help="TSV: GeneID Name Product" />
137 <param argument="--remove" type="data" format="tabular" optional="true" label="Gene/Product names to remove" help="TSV: Gene Product" /> 132 <param argument="--remove" type="data" format="tabular" optional="true" label="Gene/Product names to remove" help="TSV: Gene Product" />
138 133
134 <param argument="--header_length" type="integer" value="16" min="1" label="Maximum length of FASTA headers" help="The NCBI max FASTA header length is 16. Increase if you don't submit to NCBI." />
139 <param name="outputs" type="select" optional="true" multiple="true" label="Which outputs should be generated"> 135 <param name="outputs" type="select" optional="true" multiple="true" label="Which outputs should be generated">
140 <option value="gbk" selected="true">Annotated genome (genbank)</option> 136 <option value="gbk" selected="true">Annotated genome (genbank)</option>
141 <option value="annotations">TSV file of all annotations added to genome. (i.e. import into excel)</option> 137 <option value="annotations">TSV file of all annotations added to genome. (i.e. import into excel)</option>
142 <option value="contigs_fsa">Multi-fasta file of contigs, split at gaps (use for NCBI submission)</option> 138 <option value="contigs_fsa">Multi-fasta file of contigs, split at gaps (use for NCBI submission)</option>
143 <option value="agp">AGP file; showing linkage/location of contigs (use for NCBI submission)</option> 139 <option value="agp">AGP file; showing linkage/location of contigs (use for NCBI submission)</option>
154 <option value="need_curating">TSV file of Gene Name/Product defines that need to be curated</option> 150 <option value="need_curating">TSV file of Gene Name/Product defines that need to be curated</option>
155 <option value="new_names_passed">TSV file of Gene Name/Product deflines that passed tbl2asn but are not in Gene2Products database.</option> 151 <option value="new_names_passed">TSV file of Gene Name/Product deflines that passed tbl2asn but are not in Gene2Products database.</option>
156 </param> 152 </param>
157 </inputs> 153 </inputs>
158 <outputs> 154 <outputs>
159 <data name='gbk' format='genbank' label="${tool.name} on ${on_string}: annotated genome (genbank)" from_work_dir="out.gbk"> 155 <data name='gbk' format='genbank' label="${tool.name} on ${on_string}: annotated genome (genbank)" from_work_dir="output/annotate_results/*.gbk">
160 <filter>outputs and 'gbk' in outputs</filter> 156 <filter>outputs and 'gbk' in outputs</filter>
161 </data> 157 </data>
162 <data name='annot' format='tabular' label="${tool.name} on ${on_string}: all annotations" from_work_dir="out.annotations.txt"> 158 <data name='annot' format='tabular' label="${tool.name} on ${on_string}: all annotations" from_work_dir="output/annotate_results/*.annotations.txt">
163 <filter>outputs and 'annotations' in outputs</filter> 159 <filter>outputs and 'annotations' in outputs</filter>
164 </data> 160 </data>
165 <data name='contigs_fsa' format='fasta' label="${tool.name} on ${on_string}: contigs fasta, split at gaps" from_work_dir="out.contigs.fsa"> 161 <data name='contigs_fsa' format='fasta' label="${tool.name} on ${on_string}: contigs fasta, split at gaps" from_work_dir="output/annotate_results/*.contigs.fsa">
166 <filter>outputs and 'contigs_fsa' in outputs</filter> 162 <filter>outputs and 'contigs_fsa' in outputs</filter>
167 </data> 163 </data>
168 <data name='agp' format='tabular' label="${tool.name} on ${on_string}: AGP file" from_work_dir="out.agp"> 164 <data name='agp' format='tabular' label="${tool.name} on ${on_string}: AGP file" from_work_dir="output/annotate_results/*.agp">
169 <filter>outputs and 'agp' in outputs</filter> 165 <filter>outputs and 'agp' in outputs</filter>
170 </data> 166 </data>
171 <data name='tbl' format='txt' label="${tool.name} on ${on_string}: NCBI tbl annotation file" from_work_dir="out.tbl"> 167 <data name='tbl' format='txt' label="${tool.name} on ${on_string}: NCBI tbl annotation file" from_work_dir="output/annotate_results/*.tbl">
172 <filter>outputs and 'tbl' in outputs</filter> 168 <filter>outputs and 'tbl' in outputs</filter>
173 </data> 169 </data>
174 <data name='sqn' format='txt' label="${tool.name} on ${on_string}: NCBI Sequin genome" from_work_dir="out.sqn"> 170 <collection name="sqn" type="list" label="${tool.name} on ${on_string}: NCBI Sequin genome files">
171 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.sqn" directory="output/annotate_results" format="txt" recurse="false"/>
175 <filter>outputs and 'sqn' in outputs</filter> 172 <filter>outputs and 'sqn' in outputs</filter>
176 </data> 173 </collection>
177 <data name='fa_scaffolds' format='fasta' label="${tool.name} on ${on_string}: scaffolds sequences" from_work_dir="out.scaffolds.fa"> 174 <data name='fa_scaffolds' format='fasta' label="${tool.name} on ${on_string}: scaffolds sequences" from_work_dir="output/annotate_results/*.scaffolds.fa">
178 <filter>outputs and 'scaffolds_fa' in outputs</filter> 175 <filter>outputs and 'scaffolds_fa' in outputs</filter>
179 </data> 176 </data>
180 <data name='fa_proteins' format='fasta' label="${tool.name} on ${on_string}: protein sequences" from_work_dir="out.proteins.fa"> 177 <data name='fa_proteins' format='fasta' label="${tool.name} on ${on_string}: protein sequences" from_work_dir="output/annotate_results/*.proteins.fa">
181 <filter>outputs and 'proteins_fa' in outputs</filter> 178 <filter>outputs and 'proteins_fa' in outputs</filter>
182 </data> 179 </data>
183 <data name='fa_transcripts_mrna' format='fasta' label="${tool.name} on ${on_string}: transcript mRNA sequences" from_work_dir="out.mrna-transcripts.fa"> 180 <data name='fa_transcripts_mrna' format='fasta' label="${tool.name} on ${on_string}: transcript mRNA sequences" from_work_dir="output/annotate_results/*.mrna-transcripts.fa">
184 <filter>outputs and 'mrna_transcripts_fa' in outputs</filter> 181 <filter>outputs and 'mrna_transcripts_fa' in outputs</filter>
185 </data> 182 </data>
186 <data name='fa_transcripts_cds' format='fasta' label="${tool.name} on ${on_string}: transcript CDS sequences" from_work_dir="out.cds-transcripts.fa"> 183 <data name='fa_transcripts_cds' format='fasta' label="${tool.name} on ${on_string}: transcript CDS sequences" from_work_dir="output/annotate_results/*.cds-transcripts.fa">
187 <filter>outputs and 'cds_transcripts_fa' in outputs</filter> 184 <filter>outputs and 'cds_transcripts_fa' in outputs</filter>
188 </data> 185 </data>
189 <data name='gff3' format='gff3' label="${tool.name} on ${on_string}: annotation (GFF3)" from_work_dir="out.gff3"> 186 <data name='gff3' format='gff3' label="${tool.name} on ${on_string}: annotation (GFF3)" from_work_dir="output/annotate_results/*.gff3">
190 <filter>outputs and 'gff3' in outputs</filter> 187 <filter>outputs and 'gff3' in outputs</filter>
191 </data> 188 </data>
192 <data name='tbl2asn_report' format='txt' label="${tool.name} on ${on_string}: tbl2asn summary report of annotated genome" from_work_dir="out.discrepency.report.txt"> 189 <data name='tbl2asn_report' format='txt' label="${tool.name} on ${on_string}: tbl2asn summary report of annotated genome" from_work_dir="output/annotate_results/*.discrepency.report.txt">
193 <filter>outputs and 'discrepency' in outputs</filter> 190 <filter>outputs and 'discrepency' in outputs</filter>
194 </data> 191 </data>
195 <data name='stats' format='json' label="${tool.name} on ${on_string}: stats" from_work_dir="out.stats.json"> 192 <data name='stats' format='json' label="${tool.name} on ${on_string}: stats" from_work_dir="output/annotate_results/*.stats.json">
196 <filter>outputs and 'gbk' in outputs</filter> 193 <filter>outputs and 'gbk' in outputs</filter>
197 </data> 194 </data>
198 <data name='must_fix' format='json' label="${tool.name} on ${on_string}: Gene Name/Product must-fix" from_work_dir="output/annotate_results/Gene2Products.must-fix.txt"> 195 <data name='must_fix' format='json' label="${tool.name} on ${on_string}: Gene Name/Product must-fix" from_work_dir="output/annotate_results/Gene2Products.must-fix.txt">
199 <filter>outputs and 'must_fix' in outputs</filter> 196 <filter>outputs and 'must_fix' in outputs</filter>
200 </data> 197 </data>
204 <data name='new_names_passed' format='json' label="${tool.name} on ${on_string}: Gene Name/Product new-names-passed" from_work_dir="output/annotate_results/Gene2Products.new-names-passed.txt"> 201 <data name='new_names_passed' format='json' label="${tool.name} on ${on_string}: Gene Name/Product new-names-passed" from_work_dir="output/annotate_results/Gene2Products.new-names-passed.txt">
205 <filter>outputs and 'new_names_passed' in outputs</filter> 202 <filter>outputs and 'new_names_passed' in outputs</filter>
206 </data> 203 </data>
207 </outputs> 204 </outputs>
208 <tests> 205 <tests>
209 <test> 206 <test expect_num_outputs="16">
210 <conditional name="input"> 207 <conditional name="input">
211 <param name="input_type" value="gbk" /> 208 <param name="input_type" value="gbk" />
212 <param name="genbank" value="predict_augustus/Genus_species.gbk" /> 209 <param name="genbank" value="predict_augustus/Genus_species.gbk" />
213 </conditional> 210 </conditional>
214 <param name="database" value="2021-07-20-120000" /> 211 <param name="database" value="2021-07-20-120000" />
238 <output name="tbl"> 235 <output name="tbl">
239 <assert_contents> 236 <assert_contents>
240 <has_text text="locus_tag" /> 237 <has_text text="locus_tag" />
241 </assert_contents> 238 </assert_contents>
242 </output> 239 </output>
243 <output name="sqn"> 240 <output_collection name="sqn" type="list">
244 <assert_contents> 241 <element name="Genus_species">
245 <has_text text="Seq-submit" /> 242 <assert_contents>
246 </assert_contents> 243 <has_text text="Seq-submit" />
247 </output> 244 </assert_contents>
245 </element>
246 </output_collection>
248 <output name="fa_scaffolds"> 247 <output name="fa_scaffolds">
249 <assert_contents> 248 <assert_contents>
250 <has_text text=">sample" /> 249 <has_text text=">sample" />
251 </assert_contents> 250 </assert_contents>
252 </output> 251 </output>
294 <assert_contents> 293 <assert_contents>
295 <has_text text="Passed Description" /> 294 <has_text text="Passed Description" />
296 </assert_contents> 295 </assert_contents>
297 </output> 296 </output>
298 </test> 297 </test>
299 <test> 298 <test expect_num_outputs="16">
300 <conditional name="input"> 299 <conditional name="input">
301 <param name="input_type" value="gff" /> 300 <param name="input_type" value="gff" />
302 <param name="gff" value="predict_augustus/Genus_species.gff3" /> 301 <param name="gff" value="predict_augustus/Genus_species.gff3" />
303 <param name="fasta" value="genome.fa" /> 302 <param name="fasta" value="genome.fa" />
304 <param name="species" value="Genus species" /> 303 <param name="species" value="Genus species" />
330 <output name="tbl"> 329 <output name="tbl">
331 <assert_contents> 330 <assert_contents>
332 <has_text text="locus_tag" /> 331 <has_text text="locus_tag" />
333 </assert_contents> 332 </assert_contents>
334 </output> 333 </output>
335 <output name="sqn"> 334 <output_collection name="sqn" type="list">
336 <assert_contents> 335 <element name="Genus_species">
337 <has_text text="Seq-submit" /> 336 <assert_contents>
338 </assert_contents> 337 <has_text text="Seq-submit" />
339 </output> 338 </assert_contents>
339 </element>
340 </output_collection>
340 <output name="fa_scaffolds"> 341 <output name="fa_scaffolds">
341 <assert_contents> 342 <assert_contents>
342 <has_text text=">sample" /> 343 <has_text text=">sample" />
343 </assert_contents> 344 </assert_contents>
344 </output> 345 </output>