diff cuffdiff_wrapper.xml @ 1:9ba750f285e3 draft

planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tool_collections/cufflinks/cuffdiff commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
author devteam
date Tue, 13 Oct 2015 12:37:38 -0400
parents 9a9e3e83889b
children c139f0dd4ee6
line wrap: on
line diff
--- a/cuffdiff_wrapper.xml	Wed Nov 26 13:57:28 2014 -0500
+++ b/cuffdiff_wrapper.xml	Tue Oct 13 12:37:38 2015 -0400
@@ -1,12 +1,16 @@
-<tool id="cuffdiff" name="Cuffdiff" version="@VERSION@.0">
+<tool id="cuffdiff" name="Cuffdiff" version="@VERSION@.3">
     <description>find significant changes in transcript expression, splicing, and promoter use</description>
-    <expand macro="requirements" />
+    <requirements>
+        <requirement type="set_environment">CUFFDIFF_SCRIPT_PATH</requirement>
+        <requirement type="package" version="2.2.1">cufflinks</requirement>
+        <requirement type="package" version="2.8.2">cummeRbund</requirement>
+    </requirements>
     <expand macro="stdio" />
     <macros>
       <import>cuff_macros.xml</import>
     </macros>
     <version_command>cuffdiff 2>&amp;1 | head -n 1</version_command>
-    <command>
+    <command><![CDATA[
         cuffdiff
             --no-update-check
             --FDR=$fdr
@@ -64,9 +68,16 @@
             $gtf_input
 
             @CONDITION_SAMPLES@
+            #if $generate_sqlite:
+                &&
+                R --vanilla --no-save -f \$CUFFDIFF_SCRIPT_PATH/cummeRbund.R && mv cummeRbund.sqlite "${output_cummerbund}"
+            #end if
+            ]]>
     </command>
     <inputs>
         <param format="gtf,gff3" name="gtf_input" type="data" label="Transcripts" help="A transcript GFF3 or GTF file produced by cufflinks, cuffcompare, or other source."/>
+        <param name="omit_tabular_output" type="boolean" truevalue="yes" falsevalue="no" label="Omit Tabular Datasets" help="Discard the tabular output." />
+        <param name="generate_sqlite" type="boolean" truevalue="yes" falsevalue="no" label="Generate SQLite" help="Generate a SQLite database for use with cummeRbund." />
         <expand macro="condition_inputs" />
         <param name="library_norm_method" type="select" label="Library normalization method">
             <option value="geometric" selected="True">geometric</option>
@@ -181,49 +192,74 @@
     <outputs>
         <!-- Optional read group datasets. -->
         <data format="tabular" name="isoforms_read_group" label="${tool.name} on ${on_string}: isoforms read group tracking" from_work_dir="isoforms.read_group_tracking" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
         <data format="tabular" name="genes_read_group" label="${tool.name} on ${on_string}: genes read group tracking" from_work_dir="genes.read_group_tracking" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
         <data format="tabular" name="cds_read_group" label="${tool.name} on ${on_string}: CDs read group tracking" from_work_dir="cds.read_group_tracking" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
         <data format="tabular" name="tss_groups_read_group" label="${tool.name} on ${on_string}: TSS groups read group tracking" from_work_dir="tss_groups.read_group_tracking" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
-        <data format="text" name="read_group_info" label="${tool.name} on ${on_string}: read group info" from_work_dir="read_groups.info" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+        <data format="txt" name="read_group_info" label="${tool.name} on ${on_string}: read group info" from_work_dir="read_groups.info" >
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
-        <data format="text" name="run_info" label="${tool.name} on ${on_string}: run info" from_work_dir="run.info" >
-            <filter>(include_read_group_files == 'Yes')</filter>
+        <data format="txt" name="run_info" label="${tool.name} on ${on_string}: run info" from_work_dir="run.info" >
+            <filter>(include_read_group_files == 'Yes') and not omit_tabular_output</filter>
         </data>
         <!-- Standard datasets. -->
-        <data format="tabular" name="splicing_diff" label="${tool.name} on ${on_string}: splicing differential expression testing" from_work_dir="splicing.diff" />
-        <data format="tabular" name="promoters_diff" label="${tool.name} on ${on_string}: promoters differential expression testing" from_work_dir="promoters.diff" />
-        <data format="tabular" name="cds_diff" label="${tool.name} on ${on_string}: CDS overloading diffential expression testing" from_work_dir="cds.diff" />
-        <data format="tabular" name="cds_exp_fpkm_tracking" label="${tool.name} on ${on_string}: CDS FPKM differential expression testing" from_work_dir="cds_exp.diff" />
-        <data format="tabular" name="cds_fpkm_tracking" label="${tool.name} on ${on_string}: CDS FPKM tracking" from_work_dir="cds.fpkm_tracking" />
+        <data format="tabular" name="splicing_diff" label="${tool.name} on ${on_string}: splicing differential expression testing" from_work_dir="splicing.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="promoters_diff" label="${tool.name} on ${on_string}: promoters differential expression testing" from_work_dir="promoters.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="cds_diff" label="${tool.name} on ${on_string}: CDS overloading diffential expression testing" from_work_dir="cds.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="cds_exp_fpkm_tracking" label="${tool.name} on ${on_string}: CDS FPKM differential expression testing" from_work_dir="cds_exp.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="cds_fpkm_tracking" label="${tool.name} on ${on_string}: CDS FPKM tracking" from_work_dir="cds.fpkm_tracking">
+                <filter>not omit_tabular_output</filter>
+        </data>
         <data format="tabular" name="cds_count_tracking" label="${tool.name} on ${on_string}: CDS count tracking" from_work_dir="cds.count_tracking" >
-                <filter>(include_count_files == 'Yes')</filter>
+                <filter>(include_count_files == 'Yes') and not omit_tabular_output</filter>
         </data>
 
-        <data format="tabular" name="tss_groups_exp" label="${tool.name} on ${on_string}: TSS groups differential expression testing" from_work_dir="tss_group_exp.diff" />
-        <data format="tabular" name="tss_groups_fpkm_tracking" label="${tool.name} on ${on_string}: TSS groups FPKM tracking" from_work_dir="tss_groups.fpkm_tracking" />
+        <data format="tabular" name="tss_groups_exp" label="${tool.name} on ${on_string}: TSS groups differential expression testing" from_work_dir="tss_group_exp.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="tss_groups_fpkm_tracking" label="${tool.name} on ${on_string}: TSS groups FPKM tracking" from_work_dir="tss_groups.fpkm_tracking">
+                <filter>not omit_tabular_output</filter>
+        </data>
         <data format="tabular" name="tss_groups_count_tracking" label="${tool.name} on ${on_string}: TSS count FPKM tracking" from_work_dir="tss_groups.count_tracking" >
-                <filter>(include_count_files == 'Yes')</filter>
+                <filter>(include_count_files == 'Yes') and not omit_tabular_output</filter>
         </data>
 
-        <data format="tabular" name="genes_exp" label="${tool.name} on ${on_string}: gene differential expression testing" from_work_dir="gene_exp.diff" />
-        <data format="tabular" name="genes_fpkm_tracking" label="${tool.name} on ${on_string}: gene FPKM tracking" from_work_dir="genes.fpkm_tracking" />
+        <data format="tabular" name="genes_exp" label="${tool.name} on ${on_string}: gene differential expression testing" from_work_dir="gene_exp.diff">
+                <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="genes_fpkm_tracking" label="${tool.name} on ${on_string}: gene FPKM tracking" from_work_dir="genes.fpkm_tracking">
+            <filter>not omit_tabular_output</filter>
+        </data>
         <data format="tabular" name="genes_count_tracking" label="${tool.name} on ${on_string}: gene count tracking" from_work_dir="genes.count_tracking" >
-                <filter>(include_count_files == 'Yes')</filter>
+            <filter>(include_count_files == 'Yes') and not omit_tabular_output</filter>
         </data>
 
-        <data format="tabular" name="isoforms_exp" label="${tool.name} on ${on_string}: transcript differential expression testing" from_work_dir="isoform_exp.diff" />
-        <data format="tabular" name="isoforms_fpkm_tracking" label="${tool.name} on ${on_string}: transcript FPKM tracking" from_work_dir="isoforms.fpkm_tracking" />
-        <data format="tabular" name="isoforms_count_tracking" label="${tool.name} on ${on_string}: transcript count tracking" from_work_dir="isoforms.count_tracking" >
-                <filter>(include_count_files == 'Yes')</filter>
+        <data format="tabular" name="isoforms_exp" label="${tool.name} on ${on_string}: transcript differential expression testing" from_work_dir="isoform_exp.diff">
+            <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="isoforms_fpkm_tracking" label="${tool.name} on ${on_string}: transcript FPKM tracking" from_work_dir="isoforms.fpkm_tracking">
+            <filter>not omit_tabular_output</filter>
+        </data>
+        <data format="tabular" name="isoforms_count_tracking" label="${tool.name} on ${on_string}: transcript count tracking" from_work_dir="isoforms.count_tracking">
+            <filter>(include_count_files == 'Yes') and not omit_tabular_output</filter>
+        </data>
+        <data format="sqlite" name="output_cummerbund" label="${tool.name} on ${on_string}: cummeRbund SQLite database">
+            <filter>generate_sqlite</filter>
         </data>
     </outputs>
 
@@ -232,7 +268,9 @@
                 <!--
                     cuffdiff cuffcompare_out5.gtf cuffdiff_in1.sam cuffdiff_in2.sam 
                 -->
-                <param name="gtf_input" value="cuffcompare_out5.gtf" ftype="gtf" />
+                <param name="gtf_input" value="cuffdiff_in1.gtf" ftype="gtf" />
+                <param name="generate_sqlite" value="yes" />
+                <param name="omit_tabular_output" value="yes" />
                 <conditional name="in_type">
                     <param name="set_in_type" value="BAM" />
                     <repeat name="conditions">
@@ -254,17 +292,46 @@
                 <param name="do_normalization" value="No" />
                 <param name="multiread_correct" value="No"/>
                 <param name="sAdditional" value="No"/>
-                <output name="splicing_diff" file="cuffdiff_out9.txt"/>
-                <output name="promoters_diff" file="cuffdiff_out10.txt"/>
-                <output name="cds_diff" file="cuffdiff_out11.txt"/>
-                <output name="cds_exp_fpkm_tracking" file="cuffdiff_out4.txt"/>
-                <output name="cds_fpkm_tracking" file="cuffdiff_out8.txt"/>
-                <output name="tss_groups_exp" file="cuffdiff_out3.txt" lines_diff="200"/>
-                <output name="tss_groups_fpkm_tracking" file="cuffdiff_out7.txt"/>
-                <output name="genes_exp" file="cuffdiff_out2.txt" lines_diff="200"/>
-                <output name="genes_fpkm_tracking" file="cuffdiff_out6.txt" lines_diff="200"/>
-                <output name="isoforms_exp" file="cuffdiff_out1.txt" lines_diff="200"/>
-                <output name="isoforms_fpkm_tracking" file="cuffdiff_out5.txt" lines_diff="200"/>
+                <output name="output_cummerbund" ftype="sqlite" file="cuffdiff_out.sqlite"/>
+        </test>
+        <test>
+                <!--
+                    cuffdiff cuffcompare_out5.gtf cuffdiff_in1.sam cuffdiff_in2.sam 
+                -->
+                <param name="gtf_input" value="cuffdiff_in1.gtf" ftype="gtf" />
+                <param name="omit_tabular_output" value="no" />
+                <conditional name="in_type">
+                    <param name="set_in_type" value="BAM" />
+                    <repeat name="conditions">
+                        <param name="name" value="q1" />
+                        <repeat name="samples">
+                            <param name="sample" value="cuffdiff_in1.sam" ftype="sam" />
+                        </repeat>
+                    </repeat>
+                    <repeat name="conditions">
+                        <param name="name" value="q2" />
+                        <repeat name="samples">
+                            <param name="sample" value="cuffdiff_in2.sam" ftype="sam" />
+                        </repeat>
+                    </repeat>
+                </conditional>
+                <param name="fdr" value="0.05" />
+                <param name="min_alignment_count" value="0" />
+                <param name="do_bias_correction" value="No" />
+                <param name="do_normalization" value="No" />
+                <param name="multiread_correct" value="No"/>
+                <param name="sAdditional" value="No"/>
+                <output name="splicing_diff" file="splicing.diff"/>
+                <output name="promoters_diff" file="promoters.diff"/>
+                <output name="cds_diff" file="cds.diff"/>
+                <output name="cds_exp_fpkm_tracking" file="cds.exp_fpkm_tracking"/>
+                <output name="cds_fpkm_tracking" file="cds.fpkm_tracking"/>
+                <output name="tss_groups_exp" file="tss.groups_exp" lines_diff="200"/>
+                <output name="tss_groups_fpkm_tracking" file="tss.groups_fpkm_tracking"/>
+                <output name="genes_exp" file="genes.exp" lines_diff="200"/>
+                <output name="genes_fpkm_tracking" file="genes.fpkm_tracking" lines_diff="200"/>
+                <output name="isoforms_exp" file="isoforms.exp" lines_diff="200"/>
+                <output name="isoforms_fpkm_tracking" file="isoforms.fpkm_tracking" lines_diff="200"/>
         </test>
     </tests>
     <help>
@@ -272,8 +339,8 @@
 
 Cuffdiff is part of Cufflinks_. Cuffdiff find significant changes in transcript expression, splicing, and promoter use. Please cite: Trapnell C, Williams BA, Pertea G, Mortazavi AM, Kwan G, van Baren MJ, Salzberg SL, Wold B, Pachter L. Transcript assembly and abundance estimation from RNA-Seq reveals thousands of new transcripts and switching among isoforms. Nature Biotechnology doi:10.1038/nbt.1621
 
-.. _Cufflinks: http://cufflinks.cbcb.umd.edu/
-        
+.. _Cufflinks: http://cole-trapnell-lab.github.io/cufflinks/
+
 ------
 
 **Know what you are doing**
@@ -282,7 +349,7 @@
 
 There is no such thing (yet) as an automated gearshift in expression analysis. It is all like stick-shift driving in San Francisco. In other words, running this tool with default parameters will probably not give you meaningful results. A way to deal with this is to **understand** the parameters by carefully reading the `documentation`__ and experimenting. Fortunately, Galaxy makes experimenting easy.
 
-.. __: http://cufflinks.cbcb.umd.edu/manual.html#cuffdiff
+.. __: http://cole-trapnell-lab.github.io/cufflinks/cuffdiff/
 
 ------