view nanopolish_eventalign.xml @ 0:bee42f615f28 draft

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/nanopolish commit 0e94011a4ea84bf4ae5c2079680a37540e022625
author bgruening
date Wed, 30 May 2018 11:55:18 -0400
parents
children c8c5caecfacc
line wrap: on
line source

<tool id="nanopolish_eventalign" name="Nanopolish eventalign" version="0.1.0">
    <description>- Align nanopore events to reference k-mers</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <command detect_errors="exit_code"><![CDATA[
        ln -s '$input_merged' reads.fasta && 
        
        #if $input_reads_raw.extension == 'fast5':
            mkdir fast5_files && ln -s '$input_reads_raw' fast5_files/read1.fast5 &&
        #else
            ln -s '$input_reads_raw' fast5_files.tar.gz &&
            mkdir fast5_files && tar -xzf fast5_files.tar.gz -C fast5_files &&
        #end if

        nanopolish index -d fast5_files/ reads.fasta &&
        ln -s '$b' reads.bam &&
        ln -s '${b.metadata.bam_index}' reads.bam.bai &&
        ln -s '$g' genome.fa &&
        
        nanopolish eventalign
        -r reads.fasta
        -b reads.bam
        -g genome.fa
        $samples
        $scale_events
        $sam
        $print_read_names
        #if $w and str($w).strip():
          -w "${w}"
        #end if        
        #if $input_models_fofn:
          --models-fofn '$input_models_fofn'
        #end if
        #if $summary:
            --summary eventalign-summary.txt
        #end if
        > eventalign.out


    ]]></command>
    <inputs>
      <!-- index inputs -->
        <param type="data" name="input_merged" format="fasta,fastq" label="Basecalled merged reads.fa"/>
        <param type="data" name="input_reads_raw" format="h5,fast5.tar.gz" label="Flat archive file of raw fast5 files"/>

        <!-- variants consensus inputs -->
        <param type="data" argument="-b" format="bam" label="Reads aligned to the reference genome" />
        <param type="data" argument="-g" format="fasta" label="The reference genome"/>

        <!-- optional inputs -->
        <param type="data" name="input_models_fofn" argument="--models-fofn" format="txt" optional="true"
            label="Read alternative k-mer models (optional)" />
        
        <!-- optional params -->
        <param argument="-w" type="text" optional="true"
            label="find variants in window of region chromsome:start-end" />

        <!-- optional flags -->
        <param argument="--summary" type="boolean" truevalue="--summary" falsevalue="" checked="true"
            label="Summarize the alignment of each read/strand" />
        <param argument="--samples" type="boolean" truevalue="--samples" falsevalue="" checked="false"
            label="Write the raw samples for the event to the tsv output" />
        <param name="scale_events" argument="--scale-events" type="boolean" truevalue="--scale-events" falsevalue="" checked="false"
            label="Scale events to the model, rather than vice-versa" />
        <param argument="--sam" type="boolean" truevalue="--sam" falsevalue="" checked="false"
            label="write output in SAM format" />
        <param name="print_read_names" argument="--print-read-names" type="boolean" truevalue="--print-read-names" falsevalue="" checked="false"
            label="Print read names instead of indexes" />

    </inputs>

    <outputs>
      <!-- variants consensus outputs -->
        <data name="output_summary" format="txt" from_work_dir="eventalign-summary.txt" label="eventalign summary of reads/strands" />
        <data name="output_eventalign" format="txt" from_work_dir="eventalign.out" label="Computed variants"/>
    </outputs>
    <tests>
        <test>
      <!-- index test -->
            <param name="input_merged" ftype="fasta" value="reads.fasta" />
            <param name="input_reads_raw" ftype="fast5.tar.gz" value="fast5_files.tar.gz" />
            
      <!-- variants consensus test -->
            <param name="b" value="reads.sorted.bam" />
            <param name="g" value="draft.fa" />
            <param name="w" value="tig00000001:200000-200010" />
            <param name="sam" value="true" />

            <output name="output_summary" file="eventalign-summary.txt" />
            <output name="output_eventalign" file="reads-draft.eventalign.sam"/>
        </test>
        <test>
      <!-- index test -->
            <param name="input_merged" ftype="fasta" value="reads.fasta" />
            <param name="input_reads_raw" ftype="fast5.tar.gz" value="fast5_files.tar.gz" />
            
      <!-- variants consensus test -->
            <param name="b" value="reads.sorted.bam" />
            <param name="g" value="draft.fa" />
            <param name="w" value="tig00000001:200000-200010" />
            <param name="sam" value="false" />
            <param name="summary" value="false" />
            <param name="scale_events" value="true" />
            <param name="print_read_names" value="true" />

            <output name="output_summary" file="t2-eventalign-summary.txt" />
            <output name="output_eventalign"> 
                <assert_contents>
                    <has_text text="contig" />
                    <has_text text="position" />
                    <has_text text="event_index" />
                    <has_text text="tig00000001" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
        Usage: nanopolish eventalign [OPTIONS] --reads reads.fa --bam alignments.bam --genome genome.fa
        Align nanopore events to reference k-mers

        Tutorial and manual available at:
        http://nanopolish.readthedocs.io/en/latest/quickstart_eventalign.html      
        
        ]]></help>
    <expand macro="citations" />
</tool>