changeset 2:20ccfae924e2 draft

Uploaded
author bgruening
date Wed, 10 Jul 2013 04:50:40 -0400
parents 2afc5219c053
children 3ee40154096a
files trim_galore_wrapper.xml
diffstat 1 files changed, 35 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/trim_galore_wrapper.xml	Sun Mar 24 15:02:47 2013 -0400
+++ b/trim_galore_wrapper.xml	Wed Jul 10 04:50:40 2013 -0400
@@ -1,4 +1,4 @@
-<tool id="trim_galore" name="Trim Galore" version="0.2.4.0">
+<tool id="trim_galore" name="Trim Galore" version="0.2.4.2">
     <!-- Wrapper compatible with Trim Galore version 0.2.4.0 -->
     <description>adaptive quality and adapter trimmer</description>
     <version_command interpreter="perl">trim_galore --version</version_command>
@@ -9,7 +9,29 @@
     <command interpreter="perl">
         #from glob import glob
         #import tempfile, os
-        
+
+        ##
+        ##  Creating a temporary directory where trim_galore will store all result files
+        ##
+
+        #set $temp_dir = os.path.abspath(tempfile.mkdtemp())
+
+
+        ## trim_galore removes .fastq and .fq file extensions of input files. 
+        ## That is essential if Galaxy provides links to files (these can have real extensions), but that behaviour is causing an inconsitency in output filenaming.
+        ## Fix: link every file to $TMP without file extension
+
+        #if $singlePaired.sPaired == "single":
+            #set $input_singles_tmp = tempfile.NamedTemporaryFile( dir=$temp_dir, delete=False ).name
+            ln -s $singlePaired.input_singles $input_singles_tmp;
+
+        #else:
+            #set $input_mate1_tmp = tempfile.NamedTemporaryFile( dir=$temp_dir, delete=False ).name
+            #set $input_mate2_tmp = tempfile.NamedTemporaryFile( dir=$temp_dir, delete=False ).name
+            ln -s $singlePaired.input_mate1 $input_mate1_tmp;
+            ln -s $singlePaired.input_mate2 $input_mate2_tmp;
+        #end if
+
         trim_galore
 
         ##
@@ -54,12 +76,6 @@
 
         #end if
 
-        ##
-        ##  Creating a temporary directory where trim_galore will store all result files
-        ##
-
-        #set $temp_dir = os.path.abspath(tempfile.mkdtemp())
-
         --output_dir $temp_dir
         --suppress_warn
 
@@ -79,7 +95,7 @@
             #end if
 
             ## input sequence
-            $singlePaired.input_singles
+            $input_singles_tmp
         #else:
             --paired 
             #if $singlePaired.input_mate1.ext == "fastqillumina":
@@ -100,8 +116,8 @@
             #end if
 
             ## input sequences
-            $singlePaired.input_mate1
-            $singlePaired.input_mate2
+            $input_mate1_tmp
+            $input_mate2_tmp
 
         #end if
 
@@ -113,32 +129,32 @@
 
 
         #if $singlePaired.sPaired == "single":
-            #set $single_end_path =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_singles)) + '_trimmed.fq')
+            #set $single_end_path =  os.path.join($temp_dir, os.path.basename(str($input_singles_tmp)) + '_trimmed.fq')
             mv $single_end_path $trimmed_reads_single;
 
             #if $params.settingsType == "custom":
                 #if $params.report:
-                    #set $report_path =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_singles)) + '_trimming_report.txt')
+                    #set $report_path =  os.path.join($temp_dir, os.path.basename(str($input_singles_tmp)) + '_trimming_report.txt')
                     mv $report_path $report_file;
                 #end if
             #end if
 
         #else:
-            #set $paired_end_path_1 =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_val_1.fq')
-            #set $paired_end_path_2 =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate2)) + '_val_2.fq')
+            #set $paired_end_path_1 =  os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_val_1.fq')
+            #set $paired_end_path_2 =  os.path.join($temp_dir, os.path.basename(str($input_mate2_tmp)) + '_val_2.fq')
             mv $paired_end_path_1 $trimmed_reads_pair1;
             mv $paired_end_path_2 $trimmed_reads_pair2;
 
             #if $params.settingsType == "custom":
                 #if $params.retain_unpaired.settingsType == "retain_unpaired_output":
-                    #set $unpaired_path_1 =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_unpaired_1.fq')
-                    #set $unpaired_path_2 =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate2)) + '_unpaired_2.fq')
+                    #set $unpaired_path_1 =  os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_unpaired_1.fq')
+                    #set $unpaired_path_2 =  os.path.join($temp_dir, os.path.basename(str($input_mate2_tmp)) + '_unpaired_2.fq')
                     mv $unpaired_path_1 $unpaired_reads_1;
                     mv $unpaired_path_2 $unpaired_reads_2;
                 #end if
 
                 #if $params.report:
-                    #set $report_path =  os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_trimming_report.txt')
+                    #set $report_path =  os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_trimming_report.txt')
                     mv $report_path $report_file;
                 #end if
 
@@ -146,7 +162,7 @@
         #end if
 
         ## delete the temp_dir
-        ##rm -rf $temp_dir;
+        rm -rf $temp_dir
 
     </command>
     <inputs>