view instructor.xml @ 14:6d10b830d14a draft default tip

planemo upload for repository https://github.com/brsynth/icfree-ml commit 8dde46bddbe8df819c48e7e392893c34b22aa6dd
author tduigou
date Fri, 20 Dec 2024 09:32:21 +0000
parents e3747a8d8999
children
line wrap: on
line source

<tool id="icfree_instructor" name="iCFree instructor" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" license="MIT">
    <description>Generates a list of Echo-compatible instructions to prepare samples</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
        mkdir -p outdir &&
        python -m icfree.instructor
            '$source_plate_file'
            '$destination_plate_file'
            'outdir/instructions.csv'
            --source_plate_type '$adv.source_plate_type'
            #if str($adv.max_transfer_volume) != ''
                --max_transfer_volume '$adv.max_transfer_volume'
            #end if
            #if str($adv.split_threshold) != ''
                --split_threshold '$adv.split_threshold'
            #end if
            #if str($adv.split_components) != ''
                --split_components '$adv.split_components'
            #end if
    ]]></command>
    <inputs>
        <param name="source_plate_file" type="data" format="csv" label="Source corresponding to plate/wells" help="Output from iCFree plates designer"/>
        <param name="destination_plate_file" type="data" format="csv" label="Destination corresponding to plate/wells" help="Output from iCFree plates designer"/>
        <section name="adv" title="Advanced Options" expanded="false">
            <param name="source_plate_type" type="text" value="default:384PP_AQ_GP3" label="Source plate type" help="Comma-separated list of component and plate type pairs, e.g., 'Component_1:384PP_AQ_CP,Component_2:384PP_AQ_GP3'. Default for all is default:384PP_AQ_GP3." >
                <validator type="empty_field" message="Source plate type is required"/>
            </param>
            <param argument="max_transfer_volume" type="integer" optional="true" label="Maximum transfer volume" help="Maximum volume for a single transfer. If not specified, no splitting will be performed." />
            <param argument="split_threshold" type="integer" optional="true" label="Split threshold" help="Volume threshold above which transfers need to be split. If not specified, no splitting will be performed." />
            <param name="split_components" type="text" optional="true" label="Split components" help="Comma-separated list of component names to create separate files for." >
            </param>
        </section>
    </inputs>
    <outputs>
        <collection name="output_instructor" type="list" label="${tool.name} - Instructions">
            <discover_datasets pattern="__designation_and_ext__" format="csv" directory="outdir"/>
        </collection>
    </outputs>
    <tests>
        <test>
            <!-- python -m icfree.instructor plates_designer.source_plate.test-2.csv plates_designer.destination_plate.test-2.csv 'instructor.test-1.csv' -source_plate_type 'default:384PP_AQ_GP3' -max_transfer_volume '500' -split_threshold '500' -->
            <param name="source_plate_file" value="plates_designer.source_plate.test-2.csv" />
            <param name="destination_plate_file" value="plates_designer.destination_plate.test-2.csv" />
            <output_collection name="output_instructor" type="list" count="1">
                <element name="instructions" file="instructor.test-1.csv" ftype="csv" compare="diff" />
            </output_collection>
        </test>
        <test>
            <!-- python -m icfree.instructor plates_designer.source_plate.test-2.csv plates_designer.destination_plate.test-2.csv 'instructor.csv' -source_plate_type 'Hela lysate:384PP_AQ_CP,Access prot 50X:384PP_AQ_GP3,Reaction mix:384PP_AQ_GP3,RNA 1ug/uL:384PP_AQ_GP3' -max_transfer_volume '500' -split_threshold '500' -split_components 'Hela lysate,Access prot 50X' -->
            <param name="source_plate_file" value="plates_designer.source_plate.test-2.csv" />
            <param name="destination_plate_file" value="plates_designer.destination_plate.test-2.csv" />
            <param name="source_plate_type" value="Hela lysate:384PP_AQ_CP,Access prot 50%:384PP_AQ_GP3,Reaction mix:384PP_AQ_GP3,RNA 1ug/uL:384PP_AQ_GP3" />
            <param name="split_components" value="Hela lysate,Access prot 50%" />
            <output_collection name="output_instructor" type="list" count="3">
                <element name="instructions" file="instructor.test-2.csv" ftype="csv" compare="diff" />
                <element name="instructions_Hela lysate" file="instructor.hela.test-2.csv" ftype="csv" compare="diff" />
                <!--
                    <element name="instructor_Access prot 50X" file="instructor.access.test-2.csv" ftype="csv" compare="diff" />
                -->
            </output_collection>
        </test>
    </tests>
    <help><![CDATA[
Instructor
==========
The module generates a list of instructions for handling the generated plates.

]]></help>
    <expand macro="creator"/>
    <expand macro="citation"/>
</tool>