diff elastic_tool.xml @ 1:1aeef205e648 draft

planemo upload
author mingchen0919
date Sun, 01 Apr 2018 16:48:53 -0400
parents 28ce9fcb06c7
children 9f61c75f17b7
line wrap: on
line diff
--- a/elastic_tool.xml	Mon Mar 26 00:09:35 2018 -0400
+++ b/elastic_tool.xml	Sun Apr 01 16:48:53 2018 -0400
@@ -1,26 +1,154 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<tool id="elastic_fastq_dump" name="elastic fastq-dump" version="1.0.0">
-  <macros>
-    <import>elastic_tool_wrappers_macros.xml</import>
-  </macros>
-  <description/>
-  <requirements>
-    <expand macro="rmarkdown_requirements"/>
-  </requirements>
-  <expand macro="stdio"/>
-  <expand macro="shell_command"/>
-  <inputs>
-    <expand macro="tool_name"/>
-    <expand macro="option_argument_single_dataset"/>
-    <expand macro="option_argument_multiple_datasets"/>
-    <expand macro="option_argument_path_relative_to_a_tool"/>
-    <expand macro="option_argument_path_relative_to_this_tool"/>
-    <expand macro="option_argument_string_float_integer"/>
-  </inputs>
-  <outputs>
-    <expand macro="output_set"/>
-  </outputs>
-  <citations>
-    <expand macro="citations"/>
-  </citations>
+<tool id="elastic_fastq_dump" name="elastic fastq-dump" version="1.0.1">
+    <macros>
+        <import>elastic_tool_macros.xml</import>
+    </macros>
+    <expand macro="tool_description"/>
+    <requirements>
+        <expand macro="elastic_tool_requirements"/>
+    </requirements>
+    <stdio>
+        <regex match="XXX" source="stderr" level="warning"
+               description="Check the tool log output file for more details."/>
+    </stdio>
+    <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|option|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.option) + "|" + 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.option) + "|" + 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.option) + "|" + 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.option) + "|" + 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.option) + "|" + str($i.value) + "|"
+             echo '$item' >> $report.files_path/options_and_arguments.txt &&
+        #end for
+
+        ############ output_set
+        ## '$report'
+        ## '$report.files_path'
+        ## '$tool_output_dir'
+        ## '$tool_log'
+        #######################
+        export REPORT='$report' &&
+        export REPORT_FILES_PATH='$report.files_path' &&
+        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>
+    <inputs>
+        <param type="select" name="tool_name" multiple="false" label="Tool name">
+            <expand macro="tool_options"/>
+        </param>
+        <repeat name="option_argument_single_dataset_repeat" title="INPUT DATA FROM HISTORY: single data set" min="0"
+                default="0">
+            <param type="text" name="option" optional="true" label="option"/>
+            <param name="value" type="data" optional="false" multiple="false" label="value"/>
+        </repeat>
+        <repeat name="option_argument_multiple_datasets_repeat" title="INPUT DATA FROM HISTORY: multiple data sets"
+                min="0" default="0">
+            <param type="text" name="option" optional="true" label="option"/>
+            <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>
+        <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="option" optional="true" label="option"/>
+            <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>
+        <repeat name="option_argument_string_float_integer_repeat" title="INPUT VALUE: string/float/integer" min="0"
+                default="0">
+            <param type="text" name="option" label="option"/>
+            <param type="text" name="value" label="value"/>
+        </repeat>
+        <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="option" optional="true" label="option"/>
+            <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>
+    </inputs>
+    <outputs>
+        <data format="html" name="report" label="${tool.name} report ${on_string}"/>
+        <data format="txt" name="tool_output_dir" label="${tool.name} output directory ${on_string}"/>
+        <data format="txt" name="tool_log" label="${tool.name} log ${on_string}"/>
+    </outputs>
+    <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>
+        <expand macro="citations"/>
+    </citations>
 </tool>