view wfmash.xml @ 0:8534f4965ac5 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/wfmash commit db025e5d190c805c537e4c8ad7682bf5fdd946c5
author iuc
date Mon, 09 Feb 2026 12:40:35 +0000
parents
children
line wrap: on
line source

<tool id="wfmash" name="wfmash" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
    <description>pangenome-scale aligner</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
#set $reference_fasta_filename = "reference.fa"
#set $query_fasta_filename = "query.fa"

#if str($reference.ext).endswith('gz')
    gunzip -c '${reference}' > '${reference_fasta_filename}' &&
#else
    ln -s -f '${reference}' '${reference_fasta_filename}' &&
#end if

    samtools faidx '${reference_fasta_filename}' &&

#if str($query.ext).endswith('gz')
gunzip -c '${query}' > '${query_fasta_filename}' &&
#else
ln -s -f '${query}' '${query_fasta_filename}' &&
#end if
samtools faidx '${query_fasta_filename}' &&

wfmash 
    --threads="\${GALAXY_SLOTS:-1}" 
    -s $segment_length 
    -p $pct_identity 
    $approx_mapping 
    $no_split 
    '${reference_fasta_filename}' 
    '${query_fasta_filename}' 
    > '${output_paf}' 
    ]]></command>
    <inputs>
        <param name="reference" type="data" format="fasta,fasta.gz" label="Reference sequence" help="FASTA format" />
        <param name="query" type="data" format="fasta,fasta.gz" label="Query sequence" help="FASTA format"/>
        <param argument="-s" name="segment_length" type="integer" min="100" value="1000" label="Segment Length" help="Minimum seed length, must be >= 100 bp."/>
        <param argument="-p" name="pct_identity" type="float" min="0" max="100" value="90" label="Minimum Identity %" help="Percent identity in the mashmap step"/>
        <param argument="-m" name="approx_mapping" type="boolean" truevalue="-m" falsevalue="" label="Approximate mapping" help="Skip base-level alignment"/>
        <param argument="-N" name="no_split" type="boolean" optional="true" truevalue="-N" falsevalue="" label="No split" help="Disable splitting of input sequences during mapping (Default: enabled)"/>
    </inputs>
    
    <outputs>
        <data name="output_paf" format="paf" label="${tool.name} on ${on_string}:  PAF"/>
    </outputs>

    <tests>
        <test expect_num_outputs="1">
            <param name="reference" ftype="fasta" value="ecoli_k12.fa"/> 
            <param name="query" ftype="fasta" value="ecoli_o157.fa"/>        
            <param name="pct_identity" value="70"/>
            <output name="output_paf" file="expected_output_ecoli.paf" sort="true"/>
        </test>
    </tests>
    
    <help><![CDATA[
wfmash is designed to make whole genome alignment easy. It can handle high sequence divergence. 

By default, wfmash automatically determines an appropriate identity threshold based on the ANI (Average Nucleotide Identity) distribution of your input sequences. 
    ]]></help>
    
    <expand macro="citations"/>
</tool>