Mercurial > repos > mingchen0919 > elastic_bowtie2
diff elastic_tool_wrappers_macros.xml @ 0:b503fbd571a6 draft default tip
planemo upload
author | mingchen0919 |
---|---|
date | Tue, 27 Mar 2018 10:05:29 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/elastic_tool_wrappers_macros.xml Tue Mar 27 10:05:29 2018 -0400 @@ -0,0 +1,169 @@ +<?xml version="1.0" encoding="UTF-8"?> +<macros> + <xml name="rmarkdown_requirements"> + <requirement type="package" version="1.15.0.6-0">pandoc</requirement> + <requirement type="package" version="1.6">r-rmarkdown</requirement> + <requirement type="package" version="2.3.4.1">bowtie2</requirement> + </xml> + <xml name="stdio"> + <stdio> + <regex match="XXX" source="stderr" level="warning" description="Check the tool log output file for more details."/> + </stdio> + </xml> + <!--Tool name--> + <xml name="tool_name"> + <param type="select" name="tool_name" multiple="false" label="Tool name"> + <option value="bowtie2" selected="false">bowtie2</option><option value="bowtie2-build" selected="false">bowtie2-build</option><option value="bowtie2-inspect" selected="false">bowtie2-inspect</option></param> + </xml> + <!--OPTION/ARGUMENT PAIRS and INPUT types--> + <!--input files--> + <xml name="option_argument_single_dataset"> + <repeat name="option_argument_single_dataset_repeat" title="INPUT DATA FROM HISTORY: single data set" min="0" default="0"> + <param type="text" name="flag" optional="true" label="flag"/> + <param name="value" type="data" optional="false" multiple="false" label="value"/> + </repeat> + </xml> + <xml name="option_argument_multiple_datasets"> + <repeat name="option_argument_multiple_datasets_repeat" title="INPUT DATA FROM HISTORY: multiple data sets" min="0" default="0"> + <param type="text" name="flag" optional="true" label="flag"/> + <param name="value" type="data" optional="false" multiple="true" label="value"/> + <param type="select" name="delimiter" multiple="false" label="file delimiter"> + <option value=" " selected="false">space</option> + <option value="," selected="false">comma</option> + </param> + </repeat> + </xml> + <!--input path--> + <xml name="option_argument_path_relative_to_a_tool"> + <repeat name="option_argument_path_relative_to_a_tool_repeat" title="INPUT DATA PATH: relative to a tool output directory" min="0" default="0"> + <param type="text" name="flag" optional="true" label="flag"/> + <param name="a_tool_output_dir" type="data" optional="false" multiple="false" label="a tool output directory"/> + <param type="text" name="value" optional="true" label="value"/> + </repeat> + </xml> + <xml name="option_argument_path_relative_to_this_tool"> + <repeat name="option_argument_path_relative_to_this_tool_repeat" title="OUTPUT PATH: relative to this tool output directory" min="0" default="0"> + <param type="text" name="flag" optional="true" label="flag"/> + <param type="text" name="value" optional="false" label="value"/> + <param type="select" name="path_type" multiple="false" label="path type"> + <option value="file_path" selected="false">file path</option> + <option value="dir_path" selected="false">directory path</option> + </param> + </repeat> + </xml> + <!--input values: string, float and integer--> + <xml name="option_argument_string_float_integer"> + <repeat name="option_argument_string_float_integer_repeat" title="INPUT VALUE: string/float/integer" min="0" default="0"> + <param type="text" name="flag" label="flag"/> + <param type="text" name="value" label="value"/> + </repeat> + </xml> + <!--output set--> + <xml name="output_set"> + <data format="html" name="report" label="${tool.name} report"/> + <data format="txt" name="tool_help_doc" label="${tool.name} help doc"/> + <data format="txt" name="tool_output_dir" label="${tool.name} output directory"/> + <data format="txt" name="tool_log" label="${tool.name} log"/> + </xml> + <!--shell command fragment--> + <xml name="shell_command"> + <command><![CDATA[ + + ############ first, create a directory to store all files + mkdir -p $report.files_path && + + + ############ save the tool installation directory to an environment variable + export TOOL_INSTALL_DIR='${__tool_directory__}' && + + + ######################### + ## + ## save user input option/argument pairs into a file + ## + ######################### + + ## first line will be the header + echo 'type|flag|value|path_type' > $report.files_path/options_and_arguments.txt && + + ############ tool_name + ##-t '$tool_name' + echo "tool_name|not available|${tool_name}|not available" >> $report.files_path/options_and_arguments.txt && + + #################################################### + ## loop through repeats to get option/argument pairs + #################################################### + + ############ option_argument_single_dataset + #for i in $option_argument_single_dataset_repeat: + #set $item = 'single_dataset|' + str($i.flag) + "|" + str($i.value) + "|" + echo '$item' >> $report.files_path/options_and_arguments.txt && + #end for + + ############ option_argument_multiple_datasets + #for i in $option_argument_multiple_datasets_repeat: + #set $item = 'multiple_datasets|' + str($i.flag) + "|" + str($i.value).replace(',', str($i.delimiter)) + "|" + echo '$item' >> $report.files_path/options_and_arguments.txt && + #end for + + + ############ option_argument_path_relative_to_a_tool + #for i in $option_argument_path_relative_to_a_tool_repeat: + #set $item = 'path_relative_to_a_tool|' + str($i.flag) + "|" + str($i.value) + "|" + str($i.a_tool_output_dir) + echo '$item' >> $report.files_path/options_and_arguments.txt && + #end for + + ############ option_argument_path_relative_to_this_tool + #for i in $option_argument_path_relative_to_this_tool_repeat: + #set $item = 'path_relative_to_this_tool|' + str($i.flag) + "|" + str($i.value) + "|" + str($i.path_type) + echo '$item' >> $report.files_path/options_and_arguments.txt && + #end for + + ############ option_argument_string_float_integer + #for i in $option_argument_string_float_integer_repeat: + #set $item = 'value|' + str($i.flag) + "|" + str($i.value) + "|" + echo '$item' >> $report.files_path/options_and_arguments.txt && + #end for + + ############ output_set + ## '$report' + ## '$report.files_path' + ## '$tool_help_doc' + ## '$tool_output_dir' + ## '$tool_log' + ####################### + export REPORT='$report' && + export REPORT_FILES_PATH='$report.files_path' && + export TOOL_HELP_DOC='$tool_help_doc' && + export TOOL_OUTPUT_DIR='$tool_output_dir' && + export TOOL_LOG='$tool_log' && + + + ############ run render R script to render R markdowns + Rscript '${__tool_directory__}/elastic_tool_render.R' + + ]]></command> + </xml> + <!--tool citations--> + <xml name="citations"> + <citation type="bibtex"><![CDATA[ + @article{allaire2016rmarkdown, + title={rmarkdown: Dynamic Documents for R, 2016}, + author={Allaire, J and Cheng, Joe and Xie, Yihui and McPherson, Jonathan and Chang, Winston and Allen, Jeff + and Wickham, Hadley and Atkins, Aron and Hyndman, Rob}, + journal={R package version 0.9}, + volume={6}, + year={2016} + } + ]]></citation> + <citation type="bibtex"><![CDATA[ + @book{xie2015elastic, + title={Dynamic Documents with R and knitr}, + author={Xie, Yihui}, + volume={29}, + year={2015}, + publisher={CRC Press} + } + ]]></citation> + </xml> +</macros>