changeset 5:3905ccd5c631 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/sickle commit ac66c0e64af4ca48313478a69d68d0a682d4ab35
author iuc
date Thu, 13 Apr 2017 16:06:10 -0400
parents edaa8572219d
children 6756c87dc2d4
files sickle.xml test-data/output.c2.fastq test-data/output.f.fastq.gz test-data/output.r.fastq.gz test-data/output.s.fastq.gz test-data/test.f.fastq.gz test-data/test.r.fastq.gz
diffstat 7 files changed, 148 insertions(+), 76 deletions(-) [+]
line wrap: on
line diff
--- a/sickle.xml	Mon Jan 23 06:07:05 2017 -0500
+++ b/sickle.xml	Thu Apr 13 16:06:10 2017 -0400
@@ -1,4 +1,4 @@
-<tool id="sickle" name="Sickle" version="1.33">
+<tool id="sickle" name="Sickle" version="1.33.1" profile="17.01">
     <description>windowed adaptive trimming of FASTQ data</description>
     <requirements>
         <requirement type="package" version="1.33">sickle</requirement>
@@ -6,60 +6,106 @@
         <requirement type="package" version="1.33">sickle-trim</requirement>
     </requirements>
     <version_command>sickle --version | head -n 1</version_command>
-    <command>
+    <command><![CDATA[
+        ## Link in the input files, which also determines the type of the output
+        #set compressed = ""
+        #if str($readtype.single_or_paired) == "se":
+            #if $readtype.input_single.is_of_type('fastq.gz'):
+                #set read1 = "input_1.fastq.gz"
+                #set compressed = "-g"
+            #else
+                #set read1 = "input_1.fastq"
+            #end if
+            ln -f -s '${readtype.input_single}' ${read1} &&
+        #else if str($readtype.single_or_paired) == "pe_combo":
+            #if $readtype.input_combo.is_of_type('fastq.gz'):
+                #set read1 = "input_1.fastq.gz"
+                #set compressed = "-g"
+            #else
+                #set read1 = "input_1.fastq"
+            #end if
+            ln -f -s '${readtype.input_combo}' ${read1} &&
+        #else if str($readtype.single_or_paired) == "pe_sep":
+            #if $readtype.input_paired1.is_of_type('fastq.gz'):
+                #set read1 = "input_1.fastq.gz"
+                #set compressed = "-g"
+            #else
+                #set read1 = "input_1.fastq"
+            #end if
+            ln -f -s '${readtype.input_paired1}' ${read1} &&
+
+            #if $readtype.input_paired2.is_of_type('fastq.gz'):
+                #set read2 = "input_2.fastq.gz"
+            #else
+                #set read2 = "input_2.fastq"
+            #end if
+            ln -f -s '${readtype.input_paired2}' ${read2} &&
+        #else
+            #if $readtype.input_paired.forward.is_of_type('fastq.gz'):
+                #set read1 = "input_1.fastq.gz"
+                #set compressed = "-g"
+            #else
+                #set read1 = "input_1.fastq"
+            #end if
+            ln -f -s '${readtype.input_paired.forward}' ${read1} &&
+
+            #if $readtype.input_paired.reverse.is_of_type('fastq.gz'):
+                #set read2 = "input_2.fastq.gz"
+            #else
+                #set read2 = "input_2.fastq"
+            #end if
+            ln -f -s '${readtype.input_paired.reverse}' ${read2} &&
+        #end if
+
         sickle
 
         #if str($readtype.single_or_paired) == "se":
-            se -f "${readtype.input_single}" -o "$output_single"
+            se -f ${read1} -o '${output_single}'
+
+            #if $readtype.input_single.is_of_type('fastqillumina', 'fastqillumina.gz'):
+                -t illumina
+            #else if $readtype.input_single.is_of_type('fastqsolexa', 'fastqsolexa.gz'):
+                -t solexa
+            #else:
+                -t sanger
+            #end if
+        #else if str($readtype.single_or_paired) == "pe_combo":
+            #if $readtype.output_n:
+                pe -c ${read1} -M '${output_combo}'
+            #else
+                pe -c ${read1} -m '${output_combo}' -s '${output_combo_single}'
+            #end if
 
-            #if $readtype.input_single.is_of_type('fastqillumina'):
+            #if $readtype.input_combo.is_of_type('fastqillumina', 'fastqillumina.gz'):
+                -t illumina
+            #else if $readtype.input_combo.is_of_type('fastqsolexa', 'fastqsolexa.gz'):
+                -t solexa
+            #else:
+                -t sanger
+            #end if
+        #else if str($readtype.single_or_paired) == "pe_sep":
+            pe -f ${read1} -r ${read2} -o '${output_paired1}' -p '${output_paired2}' -s '${output_paired_single}'
+
+            #if $readtype.input_paired1.is_of_type('fastqillumina', 'fastqillumina.gz'):
                 -t illumina
-            #else if $readtype.input_single.is_of_type('fastqsolexa'):
+            #else if $readtype.input_paired1.is_of_type('fastqsolexa', 'fastqsolexa.gz'):
+                -t solexa
+            #else:
+                -t sanger
+            #end if
+        #else if str($readtype.single_or_paired) == "pe_collection":
+            pe -f ${read1} -r ${read2} -o '${output_paired_coll.forward}' -p '${output_paired_coll.reverse}' -s '${output_paired_coll_single}'
+
+            #if $readtype.input_paired.forward.is_of_type('fastqillumina', 'fastqillumina.gz'):
+                -t illumina
+            #else if $readtype.input_paired.forward.is_of_type('fastqsolexa', 'fastqsolexa.gz'):
                 -t solexa
             #else:
                 -t sanger
             #end if
         #end if
 
-        #if str($readtype.single_or_paired) == "pe_combo":
-            #if $readtype.output_n:
-                pe -c "${readtype.input_combo}" -M "$output_combo"
-            #else
-                pe -c "${readtype.input_combo}" -m "$output_combo" -s "$output_combo_single"
-            #end if
-
-            #if $readtype.input_combo.is_of_type('fastqillumina'):
-                -t illumina
-            #else if $readtype.input_combo.is_of_type('fastqsolexa'):
-                -t solexa
-            #else:
-                -t sanger
-            #end if
-        #end if
-
-        #if str($readtype.single_or_paired) == "pe_sep":
-            pe -f "${readtype.input_paired1}" -r "${readtype.input_paired2}" -o "$output_paired1" -p "$output_paired2" -s "$output_paired_single"
-
-            #if $readtype.input_paired1.is_of_type('fastqillumina'):
-                -t illumina
-            #else if $readtype.input_paired1.is_of_type('fastqsolexa'):
-                -t solexa
-            #else:
-                -t sanger
-            #end if
-        #end if
-
-        #if str($readtype.single_or_paired) == "pe_collection":
-            pe -f "${readtype.input_paired.forward}" -r "${readtype.input_paired.reverse}" -o "${output_paired_coll.forward}" -p "${output_paired_coll.reverse}" -s "$output_paired_coll_single"
-
-            #if $readtype.input_paired.forward.is_of_type('fastqillumina'):
-                -t illumina
-            #else if $readtype.input_paired.forward.is_of_type('fastqsolexa'):
-                -t solexa
-            #else:
-                -t sanger
-            #end if
-        #end if
+        $compressed
 
         #if str($qual_threshold) != "":
             -q $qual_threshold
@@ -76,6 +122,7 @@
         #if $trunc_n:
             -n
         #end if
+    ]]>
     </command>
 
     <inputs>
@@ -88,21 +135,21 @@
             </param>
 
             <when value="se">
-                <param format="fastq" name="input_single" type="data" label="Single-end FASTQ reads" help="(-f)" />
+                <param format="fastq,fastq.gz" name="input_single" type="data" label="Single-end FASTQ reads" help="(-f)" />
             </when>
 
             <when value="pe_combo">
-                <param format="fastq" name="input_combo" type="data" label="Paired-end interleaved FASTQ reads" help="(-c)" />
+                <param format="fastq,fastq.gz" name="input_combo" type="data" label="Paired-end interleaved FASTQ reads" help="(-c)" />
                 <param name="output_n" type="boolean" label="Output only one file with all reads" help="This will output only one file with all the reads, where the reads that did not pass filter will be replaced with a single 'N', rather than discarded."/>
             </when>
 
             <when value="pe_sep">
-                <param format="fastq" name="input_paired1" type="data" label="Paired-end forward strand FASTQ reads" help="(-f)" />
-                <param format="fastq" name="input_paired2" type="data" label="Paired-end reverse strand FASTQ reads" help="(-r)" />
+                <param format="fastq,fastq.gz" name="input_paired1" type="data" label="Paired-end forward strand FASTQ reads" help="(-f)" />
+                <param format="fastq,fastq.gz" name="input_paired2" type="data" label="Paired-end reverse strand FASTQ reads" help="(-r)" />
             </when>
 
             <when value="pe_collection">
-                <param format="fastq" name="input_paired" type="data_collection" collection_type="paired" label="Paired-end FASTQ reads as paired collection" />
+                <param format="fastq,fastq.gz" name="input_paired" type="data_collection" collection_type="paired" label="Paired-end FASTQ reads as paired collection" />
             </when>
         </conditional>
 
@@ -150,41 +197,66 @@
     <tests>
         <test>
             <param name="single_or_paired" value="pe_combo" />
-            <param name="input_combo" ftype="fastqsanger" value="test.fastq" />
-            <param name="qual_threshold" value="34" />
-            <output name="output_combo" ftype="fastqsanger" file="output.c1.fastq" />
-            <output name="output_combo_single" ftype="fastqsanger" file="output.s.fastq" />
+            <param name="input_combo" ftype="fastqillumina" value="test.fastq" />
+            <param name="qual_threshold" value="3" />
+            <output name="output_combo" ftype="fastqillumina" file="output.c1.fastq" />
+            <output name="output_combo_single" ftype="fastqillumina" file="output.s.fastq" />
         </test>
         <test>
             <param name="single_or_paired" value="pe_combo" />
-            <param name="input_combo" ftype="fastqsanger" value="test.fastq" />
-            <param name="qual_threshold" value="34" />
+            <param name="input_combo" ftype="fastqillumina" value="test.fastq" />
+            <param name="qual_threshold" value="3" />
             <param name="output_n" value="true" />
-            <output name="output_combo" ftype="fastqsanger" file="output.c2.fastq" />
+            <output name="output_combo" ftype="fastqillumina" file="output.c2.fastq" />
         </test>
         <test>
             <param name="single_or_paired" value="pe_sep" />
-            <param name="input_paired1" ftype="fastqsanger" value="test.f.fastq" />
-            <param name="input_paired2" ftype="fastqsanger" value="test.r.fastq" />
-            <param name="qual_threshold" value="34" />
-            <output name="output_paired1" ftype="fastqsanger" file="output.f.fastq" />
-            <output name="output_paired2" ftype="fastqsanger" file="output.r.fastq" />
-            <output name="output_paired_single" ftype="fastqsanger" file="output.s.fastq" />
+            <param name="input_paired1" ftype="fastqillumina" value="test.f.fastq" />
+            <param name="input_paired2" ftype="fastqillumina" value="test.r.fastq" />
+            <param name="qual_threshold" value="3" />
+            <output name="output_paired1" ftype="fastqillumina" file="output.f.fastq" />
+            <output name="output_paired2" ftype="fastqillumina" file="output.r.fastq" />
+            <output name="output_paired_single" ftype="fastqillumina" file="output.s.fastq" />
+        </test>
+        <test> <!-- as above, but gzipped -->
+            <param name="single_or_paired" value="pe_sep" />
+            <param name="input_paired1" ftype="fastqillumina.gz" value="test.f.fastq.gz" />
+            <param name="input_paired2" ftype="fastqillumina.gz" value="test.r.fastq.gz" />
+            <param name="qual_threshold" value="3" />
+            <output name="output_paired1" ftype="fastqillumina.gz" file="output.f.fastq.gz" />
+            <output name="output_paired2" ftype="fastqillumina.gz" file="output.r.fastq.gz" />
+            <output name="output_paired_single" ftype="fastqillumina.gz" file="output.s.fastq.gz" />
         </test>
         <test>
             <param name="single_or_paired" value="pe_collection" />
             <param name="input_paired">
                 <collection type="paired">
-                    <element name="forward" ftype="fastqsanger" value="test.f.fastq" />
-                    <element name="reverse" ftype="fastqsanger" value="test.r.fastq" />
+                    <element name="forward" ftype="fastqillumina" value="test.f.fastq" />
+                    <element name="reverse" ftype="fastqillumina" value="test.r.fastq" />
                 </collection>
             </param>
-            <param name="qual_threshold" value="34" />
+            <param name="qual_threshold" value="3" />
             <output_collection name="output_paired_coll" type="paired">
-                <element name="forward" ftype="fastqsanger" file="output.f.fastq" />
-                <element name="reverse" ftype="fastqsanger" file="output.r.fastq" />
+                <element name="forward" ftype="fastqillumina" file="output.f.fastq" />
+                <element name="reverse" ftype="fastqillumina" file="output.r.fastq" />
             </output_collection>
-            <output name="output_paired_coll_single" ftype="fastqsanger" file="output.s.fastq" />
+            <output name="output_paired_coll_single" ftype="fastqillumina" file="output.s.fastq" />
+        </test>
+
+        <test> <!-- as above, but gzipped -->
+            <param name="single_or_paired" value="pe_collection" />
+            <param name="input_paired">
+                <collection type="paired">
+                    <element name="forward" ftype="fastqillumina.gz" value="test.f.fastq.gz" />
+                    <element name="reverse" ftype="fastqillumina.gz" value="test.r.fastq.gz" />
+                </collection>
+            </param>
+            <param name="qual_threshold" value="3" />
+            <output_collection name="output_paired_coll" type="paired">
+                <element name="forward" ftype="fastqillumina.gz" file="output.f.fastq.gz" />
+                <element name="reverse" ftype="fastqillumina.gz" file="output.r.fastq.gz" />
+            </output_collection>
+            <output name="output_paired_coll_single" ftype="fastqillumina.gz" file="output.s.fastq.gz" />
         </test>
     </tests>
     <help>
--- a/test-data/output.c2.fastq	Mon Jan 23 06:07:05 2017 -0500
+++ b/test-data/output.c2.fastq	Thu Apr 13 16:06:10 2017 -0400
@@ -1069,7 +1069,7 @@
 @2242:2:1101:1410:2072/2
 N
 +
-!
+@
 @2242:2:1101:1341:2087/1
 GCAAGGCTTGGATAATGTCACCTGTGCCAAGGAGGGCAATACCCAGCTGGTAGAAAACTGTTCCCTTATGTATTCCCCTATTCAGCNGAGTCTGGGCAC
 +
@@ -1693,7 +1693,7 @@
 @2242:2:1101:3714:2244/2
 N
 +
-!
+@
 @2242:2:1101:3917:2028/1
 CCATTTCCTCGCTACGTATGATCCTGTGAATTACCAACTTCTCTCCCAGGGACCGCAGACATTGACGCTGAATTTGTTTGCCGGAATATCCCCGACGGACAACGGTGCAGCGCTTCTGGCCGCCGCCGAACGGGCAAGAGTGCAGTTGAA
 +
@@ -2693,7 +2693,7 @@
 @2242:2:1101:5866:2211/2
 N
 +
-!
+@
 @2242:2:1101:5804:2222/1
 TCCCCGCTACCACCCCTGGCGGAACCACATTCTAGCAGACGGTCTGAAAGGTGTCGAGGCACAACTGACGACGGGCGCGAGACGCCCCGACAGGTTCGA
 +
@@ -6053,7 +6053,7 @@
 @2242:2:1101:14860:2072/2
 N
 +
-!
+@
 @2242:2:1101:14831:2097/1
 ATCTTGAATCAGAACCATTTGGTTTTGGCTGCCCTTTCCTCGAAAGAATCCGTAACCGTCCCATCCGTTCACAGCGATACTATCCAGGTTGCTCAGGTCGACGATGAAGCAACCCAGGAGAAACCCCCCACAGA
 +
@@ -6165,7 +6165,7 @@
 @2242:2:1101:15244:2185/2
 N
 +
-!
+@
 @2242:2:1101:15156:2199/1
 AGTTCCCTTGTATTGAATGGTATTATCCGGCGGCAGGTTTCCCCGCATAAGCGCCGCCCCGGCAATCGTTATCCGCAATAATAGCGGCGTCAGTATCCTGTTGTCGGCTATCAGGCAATTATATTGCCTCGACTCGCTGTCATTATACCG
 +
@@ -9101,7 +9101,7 @@
 @2242:2:1101:3440:2300/2
 N
 +
-!
+@
 @2242:2:1101:3379:2319/1
 GAGGAAAAACGGTTAGCCGGGGGGCCTTCCCACTACTAGCCGTCGAGAAAATGCTTGATGAGGTAGTGGTAGATGTCCTTGCCGATTTGCATCCCCACCTCAATGATTTCCGGACCATACTGGCGTCCGGTGGCGGTGCGAAAGGGCTCT
 +
@@ -9373,7 +9373,7 @@
 @2242:2:1101:4206:2262/2
 N
 +
-!
+@
 @2242:2:1101:4230:2263/1
 GAAAGCGTCGGCGGAAGTCGAAACAAGGCAGCCAAGCGTCTTGGAATCCATCGCAATACCCTGTTATCCAAGATATATTGCCTTAAAGAAATAGATAATAATATAAGTTAGTTACTGAATTCAATACATACTCAATTTTGTCCCTTGCTC
 +
@@ -9429,7 +9429,7 @@
 @2242:2:1101:4109:2339/2
 N
 +
-!
+@
 @2242:2:1101:4113:2360/1
 GATTGCTGATCAGGGGGAAGGGATGAGAGACATCCACCGCGAGGGGCGTAAGGATAGGCTCCACCGATTTGCGGAAATACCGCTTCATCTGAGCGCGCTGGGACTTGTCCA
 +
Binary file test-data/output.f.fastq.gz has changed
Binary file test-data/output.r.fastq.gz has changed
Binary file test-data/output.s.fastq.gz has changed
Binary file test-data/test.f.fastq.gz has changed
Binary file test-data/test.r.fastq.gz has changed