diff prokka.xml @ 2:4bafaa074484 draft

Merge with Lionel Guy's wrapper. Directly call prokka, remove prokka.py . Add locustag, increment, gffver, compliant, addgenes, genus, species, strain, plasmid, gcode, usegenus, metagenome, fast, evalue, norrna, notrna params. Update BLAST+ dependency to 2.2.28. Add dependencies on prodigal and barrnap. Add readme.rst .
author crs4
date Fri, 25 Oct 2013 08:59:51 -0400
parents 4b6f16a79fe4
children fffa1ae330ae
line wrap: on
line diff
--- a/prokka.xml	Thu Sep 26 12:39:52 2013 -0400
+++ b/prokka.xml	Fri Oct 25 08:59:51 2013 -0400
@@ -1,76 +1,156 @@
-<tool id="prokka" name="Prokka" version="1.0.1">
-  <description>Prokaryotic Annotation</description>
+<tool id="prokka" name="Prokka" version="1.1.0">
+  <description>prokaryotic genome annotation</description>
   <requirements>
-    <requirement type="package" version="2.2.26+">blast+</requirement>
+    <requirement type="package" version="2.2.28">blast+</requirement>
     <requirement type="package" version="3.1b1">hmmer</requirement>
     <requirement type="package" version="1.2.36">aragorn</requirement>
+    <requirement type="package" version="2.60">prodigal</requirement>
+    <requirement type="binary">tbl2asn</requirement>
+    <requirement type="binary">parallel</requirement>
+    <requirement type="package" version="0.2">barrnap</requirement>
     <requirement type="package" version="1.1rc4">infernal</requirement>
     <requirement type="package" version="1.7">prokka</requirement>
   </requirements>
   <version_command>prokka --version</version_command>
-  <command interpreter="python">
-    prokka.py
+  <command>
+    prokka
     \${PROKKA_SITE_OPTIONS:---cpus 8}
-    ## Reads in FASTA format
-    --fasta=$fasta_file
-    ## Additional inputs
-    --kingdom $kingdom_type.kingdom
-    #if str($mincontig)
-      --mincontig $mincontig
+    --quiet ## to avoid non-error messages written to stderr
+    --outdir outdir --prefix prokka ## used in outputs section
+    #if $locustag
+      --locustag "$locustag"
+    #end if
+    #if str($increment)
+      --increment $increment
     #end if
-    #if $rfam
-      --rfam
+    --gffver $gffver
+    #if $compliant.compliant_select == "no"
+      #if $compliant.addgenes
+        --addgenes
+      #end if
+      #if str($compliant.mincontig)
+        --mincontig $compliant.mincontig
+      #end if
+    #else
+      --compliant
     #end if
     #if $centre
       --centre "$centre"
     #end if
-    ## Output files
-    --gff=$out_gff
-    --gbk=$out_gbk
-    --fna=$out_fna
-    --faa=$out_faa
-    --ffn=$out_ffn
-    --sqn=$out_sqn
-    --fsa=$out_fsa
-    --tbl=$out_tbl
-    --err=$out_err
-    --txt=$out_txt
-    --log=$out_log
+    #if $genus
+      --genus "$genus"
+    #end if
+    #if $species
+      --species "$species"
+    #end if
+    #if $strain
+      --strain "$strain"
+    #end if
+    #if $plasmid
+      --plasmid "$plasmid"
+    #end if
+    --kingdom $kingdom.kingdom_select
+    #if str($kingdom.gcode)
+      --gcode $kingdom.gcode
+    #end if
+    #if $usegenus
+      --usegenus
+    #end if
+    #if $metagenome
+      --metagenome
+    #end if
+    #if $fast
+      --fast
+    #end if
+    #if str($evalue)
+      --evalue $evalue
+    #end if
+    #if $rfam
+      --rfam
+    #end if
+    #if $norrna
+      --norrna
+    #end if
+    #if $notrna
+      --notrna
+    #end if
+    $input
   </command>
   <inputs>
-    <param name="fasta_file" type="data" format="fasta" label="Contigs" help="FASTA format" />
-    <conditional name="kingdom_type">
-      <param name="kingdom" type="select" label="Kingdom (--kingdom)">
+    <param name="input" type="data" format="fasta" label="Contigs to annotate" help="FASTA format" />
+    <param name="locustag" type="text" value="PROKKA" optional="true" label="Locus tag prefix (--locustag)" />
+    <param name="increment" type="integer" value="1" optional="true" label="Locus tag counter increment (--increment)">
+      <validator type="in_range" min="1" />
+    </param>
+    <param name="gffver" type="select" label="GFF version (--gffver)">
+      <option value="3">3</option>
+      <option value="2">2</option>
+      <option value="1">1</option>
+    </param>
+    <conditional name="compliant">
+      <param name="compliant_select" type="select" label="Force GenBank/ENA/DDJB compliance (--compliant)" help="Equivalent to --addgenes --mincontiglen 200 --centre Prokka (or other centre specified below)">
+        <option value="no">No</option>
+        <option value="yes">Yes</option>
+      </param>
+      <when value="no">
+        <param name="addgenes" type="boolean" checked="false" label="Add 'gene' features for each 'CDS' feature (--addgenes)" />
+        <param name="mincontig" type="integer" value="200" optional="true" label="Minimum contig size (--mincontiglen)" help="NCBI needs 200" />
+      </when>
+      <when value="yes" />
+    </conditional>
+    <param name="centre" type="text" value="" optional="true" label="Sequencing centre ID (--centre)" />
+    <param name="genus" type="text" value="" optional="true" label="Genus name (--genus)" help="May be used to aid annotation, see --usegenus below" />
+    <param name="species" type="text" value="" optional="true" label="Species name (--species)" />
+    <param name="strain" type="text" value="" optional="true" label="Strain name (--strain)" />
+    <param name="plasmid" type="text" value="" optional="true" label="Plasmid name or identifier (--plasmid)" />
+    <conditional name="kingdom">
+      <param name="kingdom_select" type="select" label="Kingdom (--kingdom)">
         <option value="Archaea">Archaea</option>
         <option value="Bacteria" selected="true">Bacteria</option>
         <option value="Viruses">Viruses</option>
       </param>
-      <when value="Archaea" />
-      <when value="Bacteria" />
-      <when value="Viruses" />
+      <when value="Archaea">
+        <param name="gcode" type="integer" value="11" min="1" max="23" optional="true" label="Genetic code (transl_table)" /><!-- max should be 25, but prodigal would crash -->
+      </when>
+      <when value="Bacteria">
+        <param name="gcode" type="integer" value="11" min="1" max="23" optional="true" label="Genetic code (transl_table)" /><!-- max should be 25, but prodigal would crash -->
+        <!-- <param name="gram" type="select" display="radio" label="Gram (- -gram)">
+          <option selected="true" value="none">N/A</option>
+          <option value="pos">positive</option>
+          <option value="neg">negative</option>
+        </param> SignalP is not FOSS -->
+      </when>
+      <when value="Viruses">
+        <param name="gcode" type="integer" value="1" min="1" max="23" optional="true" label="Genetic code (transl_table)" /><!-- max should be 25, but prodigal would crash -->
+      </when>
     </conditional>
-    <param name="mincontig" type="integer" value="200" optional="true" label="Minimun contig size - NCBI needs 200 (--mincontig)" />
-    <param name="centre" type="text" value="CRS4" label="Sequencing centre ID (--centre)" />
-    <param name="rfam" type="boolean" checked="false" label="Enable searching for ncRNAs with Infernal-Rfam - SLOW (--rfam)" />
+    <param name="usegenus" type="boolean" checked="false" label="Use genus-specific BLAST database (--usegenus)" help="Will use the BLAST database for the genus specified above, if installed" />
+    <param name="metagenome" type="boolean" checked="false" label="Improve gene predictions for highly fragmented genomes (--metagenome)" help="Will set --meta option for Prodigal" />
+    <param name="fast" type="boolean" checked="false" label="Fast mode (--fast)" help="Skip CDS /product searching" />
+    <param name="evalue" type="float" value="1e-06" optional="true" label="Similarity e-value cut-off">
+      <validator type="in_range" min="0" />
+    </param>
+    <param name="rfam" type="boolean" checked="false" label="Enable searching for ncRNAs with Infernal+Rfam (SLOW!) (--rfam)" />
+    <param name="norrna" type="boolean" checked="false" label="Don't run rRNA search with Barrnap" />
+    <param name="notrna" type="boolean" checked="false" label="Don't run tRNA search with Aragorn" />
   </inputs>
   <outputs>
-    <data format="gff" name="out_gff" label="${tool.name} on ${on_string}: gff" />
-    <data format="txt" name="out_gbk" label="${tool.name} on ${on_string}: gbk" />
-    <data format="fasta" name="out_fna" label="${tool.name} on ${on_string}: fna" />
-    <data format="fasta" name="out_faa" label="${tool.name} on ${on_string}: faa" />
-    <data format="fasta" name="out_ffn" label="${tool.name} on ${on_string}: ffn" />
-    <data format="asn1" name="out_sqn" label="${tool.name} on ${on_string}: sqn" />
-    <data format="fasta" name="out_fsa" label="${tool.name} on ${on_string}: fsa" />
-    <data format="txt" name="out_tbl" label="${tool.name} on ${on_string}: tbl" />
-    <data format="txt" name="out_err" label="${tool.name} on ${on_string}: err" />
-    <data format="txt" name="out_txt" label="${tool.name} on ${on_string}: txt" />
-    <data format="txt" name="out_log" label="${tool.name} on ${on_string}: log" />
+    <data name="out_gff" format="gff" label="${tool.name} on ${on_string}: gff" from_work_dir="outdir/prokka.gff" />
+    <data name="out_gbk" format="txt" label="${tool.name} on ${on_string}: gbk" from_work_dir="outdir/prokka.gbk" />
+    <data name="out_fna" format="fasta" label="${tool.name} on ${on_string}: fna" from_work_dir="outdir/prokka.fna" />
+    <data name="out_faa" format="fasta" label="${tool.name} on ${on_string}: faa" from_work_dir="outdir/prokka.faa" />
+    <data name="out_ffn" format="fasta" label="${tool.name} on ${on_string}: ffn" from_work_dir="outdir/prokka.ffn" />
+    <data name="out_sqn" format="asn1" label="${tool.name} on ${on_string}: sqn" from_work_dir="outdir/prokka.sqn" />
+    <data name="out_fsa" format="fasta" label="${tool.name} on ${on_string}: fsa" from_work_dir="outdir/prokka.fsa" />
+    <data name="out_tbl" format="txt" label="${tool.name} on ${on_string}: tbl" from_work_dir="outdir/prokka.tbl" />
+    <data name="out_err" format="txt" label="${tool.name} on ${on_string}: err" from_work_dir="outdir/prokka.err" />
+    <data name="out_txt" format="txt" label="${tool.name} on ${on_string}: txt" from_work_dir="outdir/prokka.txt" />
+    <data name="out_log" format="txt" label="${tool.name} on ${on_string}: log" from_work_dir="outdir/prokka.log" />
   </outputs>
-
   <help>
 **What it does**
 
-Prokka_ is a software tool to annotate bacterial, archaeal and viral genomes very rapidly, and produce output files that require only minor tweaking to submit to GenBank/ENA/DDBJ.
+Prokka_ is a software tool to rapidly annotate bacterial, archaeal and viral genomes, and produce output files that require only minor tweaking to submit to GenBank/ENA/DDBJ.
 
 .. _Prokka: http://www.vicbioinformatics.com/software.prokka.shtml
 
@@ -79,7 +159,7 @@
 Prokka creates several output files:
 
 gff
-    This is the master annotation in GFF3 format, containing both sequences and annotations
+    This is the master annotation in GFF format, containing both sequences and annotations
 gbk
     This is a standard GenBank file derived from the master .gff . If the input to prokka was a multi-FASTA, then this will be a multi-GenBank, with one record for each sequence
 fna
@@ -103,7 +183,7 @@
 
 **License and citation**
 
-This Galaxy tool is Copyright © 2013 `CRS4 Srl.`_ and is released under the `MIT license`_.
+This Galaxy tool is Copyright © 2013 `CRS4 Srl.`_, Lionel Guy and is released under the `MIT license`_.
 
 .. _CRS4 Srl.: http://www.crs4.it/
 .. _MIT license: http://opensource.org/licenses/MIT