diff make.contigs.xml @ 0:2b3fac454f43 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/mothur commit a9d1e0debcd357d8080a1c6c5f1d206dd45a7a4d
author iuc
date Fri, 19 May 2017 05:06:51 -0400
parents
children 3dab7d200c10
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make.contigs.xml	Fri May 19 05:06:51 2017 -0400
@@ -0,0 +1,209 @@
+<tool profile="16.07" id="mothur_make_contigs" name="Make.contigs" version="@WRAPPER_VERSION@.0">
+    <description>Aligns paired forward and reverse fastq files to contigs as fasta and quality</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"/>
+    <expand macro="stdio"/>
+    <expand macro="version_command"/>
+    <command><![CDATA[
+        @SHELL_OPTIONS@
+
+        ## Symlinks creation or On the fly creation of a combo file
+        #if $input_type.type == 'list_collection'
+            #for $pair in $input_type.list_paired_collection:
+                echo -e "${pair.name}\t${pair.forward}\t${pair.reverse}" >> combo_fastq.dat &&
+            #end for
+        #elif $input_type.type == 'simple_collection'
+            ln -s '$input_type.paired_collection.forward' ffastq.dat &&
+            ln -s '$input_type.paired_collection.reverse' rfastq.dat &&
+        #else
+            ln -s '$input_type.forward_fastq' ffastq.dat &&
+            ln -s '$input_type.reverse_fastq' rfastq.dat &&
+        #end if
+
+        #if $oligo.add == "yes":
+            ln -s '$oligo.oligos' oligo.oligos.dat &&
+            ln -s '$oligo.findex' oligo.findex.dat &&
+            ln -s '$oligo.rindex' oligo.rindex.dat &&
+        #end if
+
+        echo 'make.contigs(
+            #if $input_type.type == 'list_collection':
+                file=combo_fastq.dat,
+            #else:
+                ffastq=ffastq.dat,
+                rfastq=rfastq.dat,
+            #end if
+            align=$align,
+            #if $oligo.add == "yes":
+                oligos=oligo.oligos.dat,
+                bdiffs=$oligo.bdiffs,
+                pdiffs=$oligo.pdiffs,
+                tdiffs=$oligo.tdiffs,
+                #if $oligo.findex:
+                    findex=oligo.findex.dat,
+                #end if
+                #if $oligo.rindex:
+                    rindex=oligo.rindex.dat,
+                #end if
+            #end if
+            match=$match,
+            mismatch=$mismatch,
+            gapopen=$gapopen,
+            gapextend=$gapextend,
+            processors='\${GALAXY_SLOTS:-8}'
+        )'
+        | sed 's/ //g'  ## mothur trips over whitespace
+        | mothur
+        | tee mothur.out.log
+    ]]></command>
+    <inputs>
+        <conditional name="input_type">
+            <param name="type" type="select" label="Select a way to provide forward and reverse fastq files ?" help="">
+                <option value="regular" selected="true">Two simple fastq files (forward and reverse)</option>
+                <option value="simple_collection">One pair (paired collection)</option>
+                <option value="list_collection">Multiple pairs - Combo mode (list:paired collection)</option>
+            </param>
+            <when value="regular">
+                <param name="forward_fastq" type="data" format="fastq" label="Forward reads"/>
+                <param name="reverse_fastq" type="data" format="fastq" label="Reverse reads"/>
+            </when>
+            <when value="simple_collection">
+                <param name="paired_collection" type="data_collection" format="fastq" collection_type="paired" label="Fastq pair (collection)" help="Dataset collection made from a single pair of fastq files (forward + reverse)"/>
+            </when>
+            <when value="list_collection">
+                <param name="list_paired_collection" type="data_collection" format="fastq" collection_type="list:paired" label="Fastq pairs (collection)" help="Dataset collection made from multiple pairs of fastq files" />
+            </when>
+        </conditional>
+        <param name="align" type="select" label="align - Select a pairwise alignment method" help="">
+            <option value="needleman" selected="true">needleman (default) </option>
+            <option value="gotoh">gotoh</option>
+            <option value="kmer">kmer</option>
+        </param>
+        <conditional name="oligo">
+            <param name="add" type="select" label="Trim with an oligos file?" help="">
+                <option value="no">no</option>
+                <option value="yes">yes</option>
+            </param>
+            <when value="no"/>
+            <when value="yes">
+                <param name="oligos" type="data" format="mothur.oligos" optional="true" label="oligos - barcodes and primers"
+                    help="a file that can contain the sequences of the forward and reverse primers and barcodes and their sample identifier. Each line of the oligos file can start with the key words &quot;forward&quot;, &quot;reverse&quot; and &quot;barcode&quot; or it can start with a &quot;#&quot; to tell mothur to ignore that line of the oligos file"/>
+                <param name="bdiffs" type="integer" value="0" min="0" label="bdiffs - number of differences to allow in the barcode (default 0)"/>
+                <param name="pdiffs" type="integer" value="0" min="0" label="pdiffs - number of differences to allow in the primer (default 0)"/>
+                <param name="tdiffs" type="integer" value="0" min="0" label="tdiffs - total number of differences to allow in primer and barcode (default 0)"/>
+                <param name="findex" type="data" format="fastq" optional="true" label="forward index file (fastq)"/>
+                <param name="rindex" type="data" format="fastq" optional="true" label="revese index file (fastq)"/>
+            </when>
+        </conditional>
+        <param name="match" type="integer" value="1" label="match - Pairwise alignment reward for a match"/>
+        <param name="mismatch" type="integer" value="-1" label="mismatch - Pairwise alignment penalty for a mismatch"/>
+        <param name="gapopen" type="integer" value="-2" label="gapopen - Pairwise alignment penalty for opening a gap"/>
+        <param name="gapextend" type="integer" value="-1" label="gapextend - Pairwise alignment penalty for extending a gap"/>
+    </inputs>
+    <outputs>
+        <expand macro="logfile-output"/>
+        <data name="fasta" format="fasta" from_work_dir="*fastq.trim.*.fasta" label="${tool.name} on ${on_string}: trim.contigs.fasta"/>
+        <data name="qual" format="qual" from_work_dir="*fastq*.trim.*.qual" label="${tool.name} on ${on_string}: trim.contigs.qual"/>
+        <data name="scrapfasta" format="fasta" from_work_dir="*fastq*.scrap.*.fasta" label="${tool.name} on ${on_string}: scrap.contigs.fasta"/>
+        <data name="scrapqual" format="qual" from_work_dir="*fastq*.scrap.*.qual" label="${tool.name} on ${on_string}: scrap.contigs.qual"/>
+        <data name="report" format="txt" from_work_dir="*fastq*.contigs.report" label="${tool.name} on ${on_string}: report"/>
+        <data name="group" format="mothur.groups" from_work_dir="*fastq*.groups" label="${tool.name} on ${on_string}: group file">
+            <filter>input_type['type'] == 'list_collection'</filter>
+        </data>
+    </outputs>
+    <tests>
+        <!-- Test with two regular files as input -->
+        <test>
+            <conditional name="input_type">
+                <param name="type" value="regular"/>
+                <param name="forward_fastq" value="Mock_S280_L001_R1_001_small.fastq" ftype="fastq"/>
+                <param name="reverse_fastq" value="Mock_S280_L001_R2_001_small.fastq" ftype="fastq"/>
+            </conditional>
+            <output name="fasta" file="Mock_S280_L001_R1_001_small.trim.contigs.fasta" ftype="fasta"/>
+            <output name="qual" file="Mock_S280_L001_R1_001_small.trim.contigs.qual" ftype="qual"/>
+            <output name="report" file="Mock_S280_L001_R1_001_small.contigs.report" ftype="txt"/>
+            <expand macro="logfile-test"/>
+        </test>
+        <!-- Test with a simple paired collection as input -->
+        <test>
+            <conditional name="input_type">
+                <param name="type" value="simple_collection"/>
+                <param name="paired_collection">
+                    <collection type="paired">
+                        <element name="forward" value="Mock_S280_L001_R1_001_small.fastq" />
+                        <element name="reverse" value="Mock_S280_L001_R2_001_small.fastq" />
+                    </collection>
+                </param>
+            </conditional>
+            <output name="fasta" file="Mock_S280_L001_R1_001_small.trim.contigs.fasta" ftype="fasta"/>
+            <output name="qual" file="Mock_S280_L001_R1_001_small.trim.contigs.qual" ftype="qual"/>
+            <output name="report" file="Mock_S280_L001_R1_001_small.contigs.report" ftype="txt"/>
+            <expand macro="logfile-test"/>
+        </test>
+        <!-- Test with a simple paired collection as input + extra parameters specified -->
+        <test>
+            <conditional name="input_type">
+                <param name="type" value="simple_collection"/>
+                <param name="paired_collection">
+                    <collection type="paired">
+                        <element name="forward" value="Mock_S280_L001_R1_001_small.fastq" />
+                        <element name="reverse" value="Mock_S280_L001_R2_001_small.fastq" />
+                    </collection>
+                </param>
+            </conditional>
+            <param name="align" value="gotoh"/>
+            <param name="match" value="2"/>
+            <param name="mismatch" value="-2"/>
+            <param name="gapopen" value="-3"/>
+            <param name="gapextend" value="-2"/>
+            <output name="fasta" md5="48e32c65bd9f064c5c0b4ea7695cabe9" ftype="fasta"/>
+            <output name="qual" md5="1e7778cee0d86bfa2759a07bb4356165" ftype="qual"/>
+            <output name="report" md5="5274725ef45890fd6da4650d5d536173" ftype="txt"/>
+            <expand macro="logfile-test"/>
+        </test>
+        <!-- Test with a list:paired collection as input -->
+        <test>
+            <conditional name="input_type">
+                <param name="type" value="list_collection"/>
+                <param name="list_paired_collection">
+                    <collection type="list:paired">
+                        <element name="Pair1">
+                            <collection type="paired">
+                                <element name="forward" value="Mock_S280_L001_R1_001_small.fastq" />
+                                <element name="reverse" value="Mock_S280_L001_R2_001_small.fastq" />
+                            </collection>
+                        </element>
+                        <element name="Pair2">
+                            <collection type="paired">
+                                <element name="forward" value="Mock_S280_L001_R1_001_small.fastq" />
+                                <element name="reverse" value="Mock_S280_L001_R2_001_small.fastq" />
+                            </collection>
+                        </element>
+                    </collection>
+                </param>
+            </conditional>
+            <output name="fasta" md5="dab69a0e36f718b55d8defad26ec469b" ftype="fasta"/>
+            <output name="qual" md5="cdba5409e4f87e3cd093a4e51084d616" ftype="qual"/>
+            <output name="report" md5="80b992abd7e4d6a5e89fa70011ef2384" ftype="txt"/>
+            <output name="group" md5="2be2adb030c4fc001bfac7e1172b40e1" ftype="mothur.groups"/>
+            <expand macro="logfile-test"/>
+        </test>
+    </tests>
+    <help>
+<![CDATA[
+
+@MOTHUR_OVERVIEW@
+
+**Command Documentation**
+
+The make.contigs_ command reads a forward fastq file and a reverse fastq file and outputs new fasta and quality files.
+
+.. _make.contigs: https://www.mothur.org/wiki/Make.contigs
+
+v.1.27.0: Updated to use Mothur 1.33. Added findex and rindex parmaeters, optionally used with the oligos file.
+]]>
+    </help>
+    <expand macro="citations"/>
+</tool>