view data_manager/bracken_build_database.xml @ 4:c8136920948b draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_build_bracken_database/ commit 096286097ed5cdf189a1b68c3fc34d10f4142e54
author iuc
date Sun, 16 Apr 2023 08:29:39 +0000
parents 3c7d2c84cb09
children 5c8a23ccb14a
line wrap: on
line source

<?xml version="1.0"?>
<tool id="bracken_build_database" name="Bracken Database Builder" tool_type="manage_data" version="2.5+galaxy1" profile="19.01">
    <description>bracken database builder</description>
    <requirements>
        <requirement type="package" version="2.5">bracken</requirement>
        <requirement type="package" version="2.1.1">kraken2</requirement>
    </requirements>
    <command>
    <![CDATA[
        #import os
        #set db_dir = os.path.basename($kraken_db.fields.path)

        mkdir '$db_dir' &&
        ln -s '${kraken_db.fields.path}/*' '$db_dir/' &&
        python '$__tool_directory__/bracken_build_database.py'
          '${out_file}'
          
          --threads \${GALAXY_SLOTS:-1}
          #if $check_prebuilt.prebuilt == "no"
              --kraken-db '$db_dir'
              --kmer-len ${check_prebuilt.kmer_len}
          #end if
          #if $check_prebuilt.prebuilt == "yes"
              --kraken-db '${kraken_db.fields.path}'
              --prebuilt
          #end if
          --read-len ${check_prebuilt.read_len}
          --database-name '${database_name}'
    ]]>
    </command>
    <inputs>
        <param name="kraken_db" type="select">
            <options from_data_table="kraken2_databases">
                <validator type="no_options" message="No Kraken2 databases are available" />
            </options>
        </param>
        <conditional name="check_prebuilt">
            <param name="prebuilt" type="select" label="Use Pre-built DB">
                <option value="no">No</option>
                <option value="yes">Yes</option>
            </param>
            <when value="no">
                <param name="kmer_len" type="integer" min="8" max="256" value="35" label="K-mer length" />
                <param name="read_len" type="integer" min="8" max="1000" value="100" label="Read length" />
            </when>
            <when value="yes">
                <param name="read_len" type="select" label="Read length" >
                    <option value="50">50</option>
                    <option value="75">75</option>
                    <option value="100">100</option>
                    <option value="150">150</option>
                    <option value="200">200</option>
                    <option value="250">250</option>
                    <option value="300">300</option>
                </param>
            </when>
	</conditional>
	<param name="database_name" type="text" label="Database Name" />
    </inputs>
    <outputs>
        <data name="out_file" format="data_manager_json" />
    </outputs>
    <tests>
        <test>
            <param name="kraken_db" value="test_entry" />
            <param name="database_name" value="database" />
            <output name="out_file">
                <assert_contents>
                    <has_text text="test_db/database100mers.kmer_distrib" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help>
    </help>
    <citations>
        <citation type="doi">10.7717/peerj-cs.104</citation>
    </citations>
</tool>