view json_db_config_generating_boolean.xml @ 0:1a766d8d3883 draft

planemo upload for repository https://github.com/brsynth commit fa4c85dd6ad48d404a28e21667f18b628bbdc702-dirty
author tduigou
date Fri, 11 Jul 2025 10:10:16 +0000
parents
children 34135dac85b0
line wrap: on
line source

<tool id="parameters_maystro" name="Parameters Maystro" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.09">
    <description>Store parameters of tools in a workflow to be used again</description>
    <macros>
        <token name="@VERSION_SUFFIX@">1</token>
        <token name="@TOOL_VERSION@">0.1.0</token>
    </macros>
    <command detect_errors="exit_code"><![CDATA[
        #set $json_files = ' '.join(['"%s"' % file for file in $json_from_workflow])
        #set $json_name_mapping = ",".join(["%s:%s" % (file.file_name, file.name) for file in $json_from_workflow])
        python '$__tool_directory__/maystro.py'
            --distribute_json '$distribute_json'
            --json_from_workflow $json_files
            --json_from_user '$json_from_user'
            --json_name_mapping $json_name_mapping
            --output_workflow '$output_workflow'
            --output_user '$output_user' && echo 'DEBUB' && cat '$output_user'
    ]]></command>
    <inputs>
        <param name="distribute_json" type="boolean" label="Input Your Parameters As JSON" checked ='false' help="If True user should set workflow parameters as json file" />
        <param name="json_from_workflow" type="data" format="json" multiple="true" optional="true" help='Only if Input Your Parameters As JSON is FALSE' />
        <param name="json_from_user" type="data" format="json" optional="true" help='Only if Input Your Parameters As JSON is TRUE' />
    </inputs>   
    <outputs>
        <data name="output_workflow" format="json" label="workflow param"/>
        <data name="output_user" format="json" label="user_workflow param"/>
    </outputs>
    <tests>
        <!--distribute_json is false-->
        <test> 
            <param name="distribute_json" value='false'/>
            <param name="json_from_workflow" value="seq_from_db_param.json,seq_to_db_param.json"/>
            <output name="output_user">
                <assert_contents>
                    <has_n_lines n="17" />
                </assert_contents>
            </output>
            <output name="output_workflow">
                <assert_contents>
                    <has_n_lines n="0" />
                </assert_contents>
            </output>
        </test>
        <!--distribute_json is true -->
        <test> 
            <param name="distribute_json" value='true'/>
            <param name="json_from_workflow" value="seq_from_db_param.json,seq_to_db_param.json"/>
            <param name="json_from_user" value='merged_test.json'/>
            <output name="output_workflow">
                <assert_contents>
                    <has_n_lines n="17" />
                </assert_contents>
            </output>
            <output name="output_user">
                <assert_contents>
                    <has_n_lines n="0" />
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
Parameters Maystro
===================

Store and Generate a JSON file to be used as a workflow configuration. This JSON file can later be used to pass workflow parameters
This tool is recieve parameters from tools in workflow and return them as a JSON file that can be used later to pass thos parameters again.
    ]]></help>
    <citations>
        <citation type="bibtex">
            @unpublished{json_db_config_generating
                author = {Ramiz Khaled},
                title = {{json_db_config_generating}},
                url = {https://github.com/brsynth/},
            }
        </citation>
    </citations>
</tool>