diff remove.seqs.xml @ 1:87747f00c377 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:26:56 -0400
parents f9e64904c5dd
children cfab052e5e8a
line wrap: on
line diff
--- a/remove.seqs.xml	Fri Jun 24 16:48:28 2016 -0400
+++ b/remove.seqs.xml	Fri May 19 05:26:56 2017 -0400
@@ -4,53 +4,90 @@
         <import>macros.xml</import>
     </macros>
     <expand macro="requirements"/>
+    <expand macro="stdio"/>
     <expand macro="version_command"/>
-    <command detect_errors="aggressive"><![CDATA[
-        ## create symlinks to input datasets
-        ln -s "$accnos" accnos.dat &&
-        ln -s "$fasta_in" fasta_in.dat &&
-        ln -s "$fastq_in" fastq_in.dat &&
-        ln -s "$count_in" count_in.dat &&
-        ln -s "$qfile_in" qfile_in.dat &&
-        ln -s "$name_in" name_in.dat &&
-        ln -s "$group_in" group_in.dat &&
-        ln -s "$alignreport_in" alignreport_in.dat &&
-        ln -s "$list_in" list_in.dat &&
-        ln -s "$taxonomy_in" taxonomy_in.dat &&
+    <command><![CDATA[
+        @SHELL_OPTIONS@
 
-        echo 'remove.seqs(
-            accnos=accnos.dat
+        ## if accnos file is empty, just output files as-is, mothur errors if accnos empty (e.g. chimera filtering in pipeline but sample had no chimeras)
+        #import os
+        #if $os.lstat(str($accnos)).st_size == 0:
+            echo "accnos file empty, nothing to remove, skipping step"
             #if $fasta_in:
-                ,fasta=fasta_in.dat
+                && cp $fasta_in $fasta_out
             #end if
             #if $fastq_in:
-                ,fastq=fastq_in.dat
+                && cp $fastq_in $fastq_out
             #end if
             #if $count_in:
-                ,count=count_in.dat
+                && cp $count_in $count_out
             #end if
             #if $qfile_in:
-                ,qfile=qfile_in.dat
+                && cp $qfile_in $qfile_out
             #end if
             #if $name_in:
-                ,name=name_in.dat
+                && cp $name_in $name_out
             #end if
             #if $group_in:
-                ,group=group_in.dat
+                && cp $group_in $group_out
             #end if
             #if $alignreport_in:
-                ,alignreport=alignreport_in.dat
+                && cp $alignreport_in $alignreport_out
             #end if
             #if $list_in:
-                ,list=list_in.dat
+                && cp $list_in $list_out
             #end if
             #if $taxonomy_in:
-                ,taxonomy=taxonomy_in.dat
+                && cp $taxonomy_in $taxonomy_out
             #end if
-            $dups
-        )'
-        | sed 's/ //g'  ## mothur trips over whitespace
-        | mothur
+        #else:
+            ## create symlinks to input datasets
+            ln -s "$accnos" accnos.dat &&
+            ln -s "$fasta_in" fasta_in.dat &&
+            ln -s "$fastq_in" fastq_in.dat &&
+            ln -s "$count_in" count_in.dat &&
+            ln -s "$qfile_in" qfile_in.dat &&
+            ln -s "$name_in" name_in.dat &&
+            ln -s "$group_in" group_in.dat &&
+            ln -s "$alignreport_in" alignreport_in.dat &&
+            ln -s "$list_in" list_in.dat &&
+            ln -s "$taxonomy_in" taxonomy_in.dat &&
+
+            echo 'remove.seqs(
+                accnos=accnos.dat
+                #if $fasta_in:
+                    ,fasta=fasta_in.dat
+                #end if
+                #if $fastq_in:
+                    ,fastq=fastq_in.dat
+                #end if
+                #if $count_in:
+                    ,count=count_in.dat
+                #end if
+                #if $qfile_in:
+                    ,qfile=qfile_in.dat
+                #end if
+                #if $name_in:
+                    ,name=name_in.dat
+                #end if
+                #if $group_in:
+                    ,group=group_in.dat
+                #end if
+                #if $alignreport_in:
+                    ,alignreport=alignreport_in.dat
+                #end if
+                #if $list_in:
+                    ,list=list_in.dat
+                #end if
+                #if $taxonomy_in:
+                    ,taxonomy=taxonomy_in.dat
+                #end if
+                $dups
+            )'
+            | sed 's/ //g'  ## mothur trips over whitespace
+            | mothur
+        | tee mothur.out.log
+        #end if
     ]]></command>
     <inputs>
         <param name="accnos" type="data" format="mothur.accnos" label="accnos - Accession Names of sequences to be removed"/>
@@ -124,23 +161,24 @@
             <expand macro="logfile-test"/>
             <output name="count_out" md5="bd1cb7af6f277210c5c11ff7d7c54592"/>
         </test>
+        <!-- TODO: make test for empty accnos file -->
     </tests>
     <help>
 <![CDATA[
 
 @MOTHUR_OVERVIEW@
 
-**Command Documenation**
+**Command Documentation**
 
 The remove.seqs_ command takes a list of sequence names and either a fasta, name_, group_, list_, align.report_ or taxonomy_ file to generate a new file that does not contain the sequences in the list. This command may be used in conjunction with the list.seqs_ command to help screen a sequence collection.
 
-.. _name: http://www.mothur.org/wiki/Name_file
-.. _group: http://www.mothur.org/wiki/Group_file
-.. _list: http://www.mothur.org/wiki/List_file
-.. _align.report: http://www.mothur.org/wiki/Align.seqs
-.. _taxonomy: http://www.mothur.org/wiki/Taxonomy_outline
-.. _list.seqs: http://www.mothur.org/wiki/list.seqs
-.. _remove.seqs: http://www.mothur.org/wiki/Remove.seqs
+.. _name: https://www.mothur.org/wiki/Name_file
+.. _group: https://www.mothur.org/wiki/Group_file
+.. _list: https://www.mothur.org/wiki/List_file
+.. _align.report: https://www.mothur.org/wiki/Align.seqs
+.. _taxonomy: https://www.mothur.org/wiki/Taxonomy_outline
+.. _list.seqs: https://www.mothur.org/wiki/list.seqs
+.. _remove.seqs: https://www.mothur.org/wiki/Remove.seqs
 ]]>
     </help>
     <expand macro="citations"/>