I'm writing a wrapper for RUM (RNA-Seq Unified Mapper). For those of you who 
aren't familiar with RUM, it produces several output files. I'm trying to 
capture 12 of those files in Galaxy.

Here is one of the 12 nodes:
<data format="tabular" name="feature_quantifications_galaxy" 
label="${tool.name} on ${on_string}: Feature Quantifications" />

All 12 nodes have similar syntax. When I try to run RUM from Galaxy, it's 
obvious that the program is executing properly. The outputs show up as pending 
until the execution of RUM has completed. However, the output is not being 
properly captured. All 12 outputs show up as being in the error state, and when 
I click on the bug icon I see the following in the error report:

yes: standard output: Broken pipe
yes: write error

Those two lines are repeated literally over a hundred times. In the additional 
output pane beneath the error pane, It shows the output from RUM, which 
indicates that the tool indeed ran properly. The text is exactly what I would 
expect to see if I ran the tool from the command line without any problems. So 
basically, I'm doing something wrong in capturing the output. I have watched 
the screencast and perused other wrappers, but I'm not sure at this point where 
I'm going wrong. The full text of the wrapper is pasted below:

<tool id="rum_all" name="RUM" version="0.1">
    <!-- Run all steps of RUM (RNA-seq Unified Mapper). Mapper written by Dan 
Dorset at Vanderbilt GSR. Email with questions: daniel.dor...@vanderbilt.edu 
Wrapper status is alpha -->
    <description>: RNA-Seq Unified Mapping</description>
    <requirements>
        <requirement type="package">rum</requirement>
    </requirements>
    <command>
        ##IMPORTANT!!! You will need to change this to correspond to the 
specific installation path of RUM on your server
               perl /data/dorsetdc/rum/bin/RUM_runner.pl

        ##Reference Genome
               ##IMPORTANT!!! You will need to change this to correspond to the 
specific installation path of RUM on your server
               /data/dorsetdc/rum/conf/rum.config_$refgenome

        ## Inputs.
        #if $inputs.paired_or_single == "paired":
            $inputs.left_input,,,$inputs.right_input
        #else:
            $inputs.input
        #end if

               ##output directory
               ./

        ## Number of CPU cores
               ##IMPORTANT!!! Make sure you set the max value to something 
appropriate for your system. See the RUM tool manpage for more details
               #if $additional_params.use_additional == "yes":
                       $additional_params.num_cores
               #else:
                       16
               #end if

               ##data name (static for now)
               galaxy

               ## Additional parameters.
        #if $additional_params.use_additional == "yes":
            -min_contig_length $additional_params.min_contig_length
                       #if $additional_params.strandspecific == "yes"
                               -strand_specific
                       #end if
                       #if $additional_params.dnamode == "yes"
                               -dnamode
                       #end if
                       #if $additional_params.count_mismatches == "yes"
                               -countmatches
                       #end if
        #end if

    </command>
    <inputs>
        <conditional name="inputs">
            <param name="paired_or_single" type="select" label="Paired or 
Single-end data?">
                <option value="paired">Paired</option>
                <option value="single">Single</option>
            </param>
            <when value="paired">
                <param format="fasta,fastq" name="left_input" type="data" 
label="Left/Forward strand reads" help=""/>
                <param format="fasta,fastq" name="right_input" type="data" 
label="Right/Reverse strand reads" help=""/>
            </when>
            <when value="single">
                <param format="fasta,fastq" name="input" type="data" 
label="Single-end reads" help=""/>
            </when>
        </conditional>
               <param name="refgenome" type="select" label="Select Reference 
Genome">
                       <option value="hg19">Human (hg19)</option>
                       <option value="mm9">Mouse (mm9)</option>
               </param>
               <conditional name="additional_params">
            <param name="use_additional" type="select" label="Use Additional 
Params?">
                <option value="no">No</option>
                <option value="yes">Yes</option>
            </param>
            <when value="no">
            </when>
            <when value="yes">
                <param name="min_contig_length" type="integer" value="200" 
min="1" label="Minimum Contig Length" help=""/>
                               <param name="num_cores" type="integer" 
value="16" min="1" max="32" label="Number of Cores to Use" help="Min of 1, max 
of 32" />
                               <param name="strandspecific" type="select" 
label="Are the Data Strand Specific?">
                                      <option value="no">No</option>
                                      <option value="yes">Yes</option>
                               </param>
                               <param name="dnamode" type="select" label="Run 
in DNA Mode? (Don't map across splice junctions)">
                                      <option value="no">No</option>
                                      <option value="yes">Yes</option>
                               </param>
                               <param name="count_mismatches" type="select" 
label="Report the number of Mismatches?">
                                      <option value="no">No</option>
                                      <option value="yes">Yes</option>
                               </param>

            </when>
        </conditional>
    </inputs>
    <outputs>
               <data format="tabular" name="feature_quantifications_galaxy" 
label="${tool.name} on ${on_string}: Feature Quantifications" />
       <data format="txt" name="trinity_log" label="${tool.name} on 
${on_string}: log" />
        <data format="fasta" name="assembled_transcripts" label="${tool.name} 
on ${on_string}: Assembled Transcripts" />
               <data format="sam" name="RUM.sam" label="${tool.name} on 
${on_string}: All Alignments in SAM" />
               <data format="bedGraph" name="RUM.cov" label="${tool.name} on 
${on_string}: Depth of Coverage for Unique Mappers" />
               <data format="bedGraph" name="RUM_NU.cov" label="${tool.name} on 
${on_string}: Depth of Coverage for Non-Unique Mappers" />
               <data format="bed" name="RUM_Unique" label="${tool.name} on 
${on_string}: Unique Mappers" />
               <data format="bed" name="RUM_NU" label="${tool.name} on 
${on_string}: Non-Unique Mappers" />
               <data format="bed" name="junctions_all.bed" label="${tool.name} 
on ${on_string}: All Junctions" />
               <data format="rum" name="junctions_all.rum" label="${tool.name} 
on ${on_string}: All Junctions in RUM format" />
               <data format="bed" name="junctions_high-quality.bed" 
label="${tool.name} on ${on_string}: All High-Quality Junctions" />
               <data format="bed" name="inferred_internal_exons.bed" 
label="${tool.name} on ${on_string}: Inferred Internal Exons" />
    </outputs>
    <tests>
    </tests>
    <help>
        RUM is an alignment, junction calling, and feature quantification 
pipeline specifically designed for Illumina RNA-Seq data.
        This tool gives a whole lot of output.

        This tool integration is currently in testing mode. It was written by 
Dan Dorset in the Vanderbilt GSR. If you have any questions or observe an 
error, please contact Dan: daniel.dor...@vanderbilt.edu
        More information about the RUM tool is available at the following URL:
        http://cbil.upenn.edu/RUM/userguide.php
    </help>
</tool>


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/

Reply via email to