view sam_to_bam.xml @ 5:d6181de75bdd draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tool_collections/samtools/sam_to_bam commit a972815cbd43dea553b3c0e4ad548f35d0023228-dirty
author iuc
date Sun, 28 Jul 2019 14:45:59 -0400
parents 4afb4a5f0924
children a832dc88e7dc
line wrap: on
line source

<tool id="sam_to_bam" name="SAM-to-BAM" version="2.1.1">
    <description>convert SAM to BAM</description>

    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="stdio"/>
    <expand macro="version_command"/>

    <command><![CDATA[
        #if $source.index_source == "history":
            ln -s '${source.ref_file}' input.fa &&
            samtools faidx input.fa &&
        #else
            ln -s '${source.index.fields.path}' input.fa &&
            ln -s '${source.index.fields.path}.fai' input.fa.fai &&
        #end if

        samtools view
            -b
            -@ \${GALAXY_SLOTS:-1}
            -t input.fa.fai '$input1' |

        samtools sort
            -O bam
            -@ \${GALAXY_SLOTS:-1}
            -o '$output1'
            -T temp
    ]]></command>

    <inputs>
        <conditional name="source">
            <param label="Choose the source for the reference genome" name="index_source" type="select">
                <option value="cached">Use a built-in genome</option>
                <option value="history">Use a genome from the history</option>
            </param>
            <when value="cached">
                <param name="input1" type="data" format="sam" label="SAM file to convert">
                    <validator type="unspecified_build" />
                    <validator message="Sequences are not currently available for the specified build." metadata_column="1" metadata_name="dbkey" table_name="fasta_indexes" type="dataset_metadata_in_data_table" />
                </param>
                <param name="index" type="select" label="Using reference genome">
                    <options from_data_table="fasta_indexes">
                        <filter column="1" key="dbkey" ref="input1" type="data_meta" />
                        <validator message="No reference genome is available for the build associated with the selected input dataset" type="no_options" />
                    </options>
                </param>
            </when>
            <when value="history">
                <param name="input1" type="data" format="sam" label="SAM file to convert" />
                <param name="ref_file" type="data" format="fasta" label="Using reference file" />
            </when>
        </conditional>
    </inputs>
    <outputs>
        <data name="output1" format="bam" label="${tool.name} on ${on_string}: converted BAM">
            <actions>
                <conditional name="source.index_source">
                    <when value="cached">
                        <action name="dbkey" type="metadata">
                            <option name="source.input1" param_attribute="dbkey" type="from_param" />
                        </action>
                    </when>
                    <when value="history">
                        <action name="dbkey" type="metadata">
                            <option name="source.ref_file" param_attribute="dbkey" type="from_param" />
                        </action>
                    </when>
                </conditional>
            </actions>
        </data>
    </outputs>
    <tests>
        <test>
            <param name="index_source" value="history" />
            <param name="input1" ftype="sam" value="sam_to_bam_in1.sam" />
            <param name="ref_file" ftype="fasta" dbkey="equCab2" value="chr_m.fasta" />
            <output name="output1" ftype="bam" file="sam_to_bam_out1.bam" />
        </test>
        <test>
            <param name="index_source" value="cached" />
            <param name="input1" ftype="sam" dbkey="equCab2" value="sam_to_bam_in1.sam" />
            <param name="index" value="equCab2chrM" />
            <output name="output1" ftype="bam" file="sam_to_bam_out2.bam" />
        </test>
        <test>
            <param name="index_source" value="history" />
            <param name="input1" ftype="sam" value="sam_to_bam_noheader_in2.sam" />
            <param name="ref_file" ftype="fasta" dbkey="equCab2" value="chr_m.fasta" />
            <output name="output1" ftype="bam" file="sam_to_bam_out3.bam" />
        </test>
    </tests>
    <help><![CDATA[
**What it does**

Converts SAM dataset into its binary, BAM, representation using the ``samtools view`` and ``sort`` commands.
    ]]></help>
    <expand macro="citations"/>
</tool>