diff MetaProSIP.xml @ 9:73c1493ac4c2 draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit ddf41e8bda1ba065f5cdec98e93dee8165ffc1b9"
author galaxyp
date Thu, 03 Sep 2020 16:22:06 +0000
parents 8febc104e78c
children c18e6eb07aa9
line wrap: on
line diff
--- a/MetaProSIP.xml	Fri May 17 09:25:37 2019 -0400
+++ b/MetaProSIP.xml	Thu Sep 03 16:22:06 2020 +0000
@@ -1,225 +1,128 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
 <!--Proposed Tool Section: [Utilities]-->
-<tool id="MetaProSIP" name="MetaProSIP" version="2.3.2">
+<tool id="MetaProSIP" name="MetaProSIP" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">
   <description>Performs proteinSIP on peptide features for elemental flux analysis.</description>
   <macros>
     <token name="@EXECUTABLE@">MetaProSIP</token>
     <import>macros.xml</import>
+    <import>macros_autotest.xml</import>
+    <import>macros_test.xml</import>
   </macros>
-  <expand macro="requirements">
-    <requirement type="package" version="3.4.1">r-base</requirement>
-    <requirement type="package" version="3.0.1">r-gplots</requirement>
-  </expand>
+  <expand macro="requirements"/>
   <expand macro="stdio"/>
-  <command detect_errors="aggressive"><![CDATA[
-MetaProSIP
+  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
+@EXT_FOO@
+#import re
+
+## Preprocessing
+mkdir in_mzML &&
+ln -s '$in_mzML' 'in_mzML/${re.sub("[^\w\-_]", "_", $in_mzML.element_identifier)}.$gxy2omsext($in_mzML.ext)' &&
+mkdir in_fasta &&
+ln -s '$in_fasta' 'in_fasta/${re.sub("[^\w\-_]", "_", $in_fasta.element_identifier)}.$gxy2omsext($in_fasta.ext)' &&
+mkdir out_csv &&
+mkdir out_peptide_centric_csv &&
+mkdir in_featureXML &&
+ln -s '$in_featureXML' 'in_featureXML/${re.sub("[^\w\-_]", "_", $in_featureXML.element_identifier)}.$gxy2omsext($in_featureXML.ext)' &&
+
+## Main program call
 
-#if $param_in_mzML:
-  -in_mzML $param_in_mzML
-#end if
-#if $param_in_fasta:
-  -in_fasta $param_in_fasta
-#end if
-#if $param_out_csv:
-  -out_csv $param_out_csv
-#end if
-#if $param_out_peptide_centric_csv:
-  -out_peptide_centric_csv param_out_peptide_centric_csv
-#end if
-#if $param_in_featureXML:
-  -in_featureXML $param_in_featureXML
-#end if
-#if $param_mz_tolerance_ppm:
-  -mz_tolerance_ppm $param_mz_tolerance_ppm
-#end if
-#if $param_rt_tolerance_s:
-  -rt_tolerance_s $param_rt_tolerance_s
-#end if
-#if $param_intensity_threshold:
-  -intensity_threshold $param_intensity_threshold
-#end if
-#if $param_correlation_threshold:
-  -correlation_threshold $param_correlation_threshold
-#end if
-#if $param_xic_threshold:
-  -xic_threshold $param_xic_threshold
-#end if
-#if $param_decomposition_threshold:
-  -decomposition_threshold $param_decomposition_threshold
-#end if
-#if $param_weight_merge_window:
-  -weight_merge_window $param_weight_merge_window
-#end if
-#if $param_plot_extension:
-  -plot_extension
-  #if " " in str($param_plot_extension):
-    "$param_plot_extension"
-  #else
-    $param_plot_extension
-  #end if
-#end if
--qc_output_directory images
-#if $param_labeling_element:
-  -labeling_element
-  #if " " in str($param_labeling_element):
-    "$param_labeling_element"
-  #else
-    $param_labeling_element
-  #end if
-#end if
-#if $param_use_unassigned_ids:
-  -use_unassigned_ids
-#end if
-#if $param_use_averagine_ids:
-  -use_averagine_ids
-#end if
-#if $param_report_natural_peptides:
-  -report_natural_peptides
-#end if
-#if $param_filter_monoisotopic:
-  -filter_monoisotopic
-#end if
-#if $param_cluster:
-  -cluster
-#end if
-#if $adv_opts.adv_opts_selector=='advanced':
-    #if $adv_opts.param_min_correlation_distance_to_averagine:
-  -min_correlation_distance_to_averagine $adv_opts.param_min_correlation_distance_to_averagine
-#end if
-    #if $adv_opts.param_pattern_15N_TIC_threshold:
-  -pattern_15N_TIC_threshold $adv_opts.param_pattern_15N_TIC_threshold
-#end if
-    #if $adv_opts.param_pattern_13C_TIC_threshold:
-  -pattern_13C_TIC_threshold $adv_opts.param_pattern_13C_TIC_threshold
-#end if
-    #if $adv_opts.param_pattern_2H_TIC_threshold:
-  -pattern_2H_TIC_threshold $adv_opts.param_pattern_2H_TIC_threshold
-#end if
-    #if $adv_opts.param_pattern_18O_TIC_threshold:
-  -pattern_18O_TIC_threshold $adv_opts.param_pattern_18O_TIC_threshold
-#end if
-    #if $adv_opts.param_heatmap_bins:
-  -heatmap_bins $adv_opts.param_heatmap_bins
-#end if
-    #if $adv_opts.param_observed_peak_fraction:
-  -observed_peak_fraction $adv_opts.param_observed_peak_fraction
-#end if
-    #if $adv_opts.param_min_consecutive_isotopes:
-  -min_consecutive_isotopes $adv_opts.param_min_consecutive_isotopes
-#end if
-    #if $adv_opts.param_score_plot_yaxis_min:
-  -score_plot_yaxis_min $adv_opts.param_score_plot_yaxis_min
-#end if
-    #if $adv_opts.param_collect_method:
-  -collect_method
-  #if " " in str($adv_opts.param_collect_method):
-    "$adv_opts.param_collect_method"
-  #else
-    $adv_opts.param_collect_method
-  #end if
-#end if
-    #if $adv_opts.param_lowRIA_correlation_threshold:
-  -lowRIA_correlation_threshold $adv_opts.param_lowRIA_correlation_threshold
-#end if
-    #if $adv_opts.param_force:
-  -force
-#end if
-#end if
--threads "\${GALAXY_SLOTS:-1}"
+set -o pipefail &&
+@EXECUTABLE@ -write_ctd ./ &&
+python3 '$__tool_directory__/fill_ctd.py' '@EXECUTABLE@.ctd' '$args_json' '$hardcoded_json' &&
+@EXECUTABLE@ -ini @EXECUTABLE@.ctd
+-in_mzML
+'in_mzML/${re.sub("[^\w\-_]", "_", $in_mzML.element_identifier)}.$gxy2omsext($in_mzML.ext)'
+-in_fasta
+'in_fasta/${re.sub("[^\w\-_]", "_", $in_fasta.element_identifier)}.$gxy2omsext($in_fasta.ext)'
+-out_csv
+'out_csv/output.${gxy2omsext("csv")}'
+-out_peptide_centric_csv
+'out_peptide_centric_csv/output.${gxy2omsext("csv")}'
+-in_featureXML
+'in_featureXML/${re.sub("[^\w\-_]", "_", $in_featureXML.element_identifier)}.$gxy2omsext($in_featureXML.ext)'
 
-## - add comment char to first line, 
-## - remove leading/trailing spaces in fields
-## - remove empty line(s) 
-## - remove 'file://' and get basename of filenames in the table
-## - add empty fields as '0' (MetaproSIP output has varying number of output columns, ie it omits the last columns if there are no values)
-&& cat param_out_peptide_centric_csv | 
-	sed '1 s/^/#/' | 
-	sed 's/\t /\t/g; s/ \t/\t/g; s/ /_/g' | 
-	grep -v "^$" | 
-	sed "s/\tfile:\/\//\t/g; s/\t\/[^\t]\+\//\t/g; s/\.$param_plot_extension//g" | 
-	awk -v FS='\t' 'BEGIN{line=0}{if(line==0){ncol=NF; print $0}else{printf("%s",$0); for(i=0; i<ncol-NF; i++){printf("\t0")}printf("\n")}line+=1}' > "$param_out_peptide_centric_csv"
-
-## get html file (should be only one [?])
-
-#if $param_collection or $param_plot_extension == 'pdf'
-	&& rm -f images/*\.html
-#else
-	&& mv images/*\.html '${html_file}'
-	&& mv images/ '${html_file.files_path}'
-#end if
- ]]></command>
+## Postprocessing
+&& mv 'out_csv/output.${gxy2omsext("csv")}' '$out_csv'
+&& mv 'out_peptide_centric_csv/output.${gxy2omsext("csv")}' '$out_peptide_centric_csv'
+#if "ctd_out_FLAG" in $OPTIONAL_OUTPUTS
+  && mv '@EXECUTABLE@.ctd' '$ctd_out'
+#end if]]></command>
+  <configfiles>
+    <inputs name="args_json" data_style="paths"/>
+    <configfile name="hardcoded_json"><![CDATA[{"r_executable": "R", "log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
+  </configfiles>
   <inputs>
-    <param name="param_in_mzML" type="data" format="mzml" optional="False" label="Centroided MS1 data" help="(-in_mzML) "/>
-    <param name="param_in_fasta" type="data" format="fasta" optional="False" label="Protein sequence database" help="(-in_fasta) "/>
-    <param name="param_in_featureXML" type="data" format="featurexml" optional="False" label="Feature data annotated with identifications (IDMapper)" help="(-in_featureXML) "/>
-    <param name="param_mz_tolerance_ppm" type="float" value="10.0" label="Tolerance in ppm" help="(-mz_tolerance_ppm) "/>
-    <param name="param_rt_tolerance_s" type="float" value="30.0" label="Rolerance window around feature rt for XIC extraction" help="(-rt_tolerance_s) "/>
-    <param name="param_intensity_threshold" type="float" value="10.0" label="Intensity threshold to collect peaks in the MS1 spectrum" help="(-intensity_threshold) "/>
-    <param name="param_correlation_threshold" type="float" value="0.7" label="Correlation threshold for reporting a RIA" help="(-correlation_threshold) "/>
-    <param name="param_xic_threshold" type="float" value="0.7" label="Minimum correlation to mono-isotopic peak for retaining a higher isotopic peak" help="(-xic_threshold) If featureXML from reference file is used it should be disabled (set to -1) as no mono-isotopic peak is expected to be present"/>
-    <param name="param_decomposition_threshold" type="float" value="0.7" label="Minimum R² of decomposition that must be achieved for a peptide to be reported" help="(-decomposition_threshold) "/>
-    <param name="param_weight_merge_window" type="float" value="5.0" label="Decomposition coefficients within +- this rate window will be combined" help="(-weight_merge_window) "/>
-    <param name="param_plot_extension" display="radio" type="select" optional="False" value="png" label="Extension used for plots (png|svg|pdf)" help="(-plot_extension) ">
+    <param name="in_mzML" argument="-in_mzML" type="data" format="mzml" optional="false" label="Centroided MS1 data" help=" select mzml data sets(s)"/>
+    <param name="in_fasta" argument="-in_fasta" type="data" format="fasta" optional="false" label="Protein sequence database" help=" select fasta data sets(s)"/>
+    <param name="in_featureXML" argument="-in_featureXML" type="data" format="featurexml" optional="false" label="Feature data annotated with identifications (IDMapper)" help=" select featurexml data sets(s)"/>
+    <param name="mz_tolerance_ppm" argument="-mz_tolerance_ppm" type="float" optional="true" value="10.0" label="Tolerance in ppm" help=""/>
+    <param name="rt_tolerance_s" argument="-rt_tolerance_s" type="float" optional="true" value="30.0" label="Rolerance window around feature rt for XIC extraction" help=""/>
+    <param name="intensity_threshold" argument="-intensity_threshold" type="float" optional="true" value="10.0" label="Intensity threshold to collect peaks in the MS1 spectrum" help=""/>
+    <param name="correlation_threshold" argument="-correlation_threshold" type="float" optional="true" value="0.7" label="Correlation threshold for reporting a RIA" help=""/>
+    <param name="xic_threshold" argument="-xic_threshold" type="float" optional="true" value="0.7" label="Minimum correlation to mono-isotopic peak for retaining a higher isotopic peak" help="If featureXML from reference file is used it should be disabled (set to -1) as no mono-isotopic peak is expected to be present"/>
+    <param name="decomposition_threshold" argument="-decomposition_threshold" type="float" optional="true" value="0.7" label="Minimum R-squared of decomposition that must be achieved for a peptide to be reported" help=""/>
+    <param name="weight_merge_window" argument="-weight_merge_window" type="float" optional="true" value="5.0" label="Decomposition coefficients within +- this rate window will be combined" help=""/>
+    <param name="plot_extension" argument="-plot_extension" display="radio" type="select" optional="false" label="Extension used for plots (png|svg|pdf)" help="">
       <option value="png" selected="true">png</option>
       <option value="svg">svg</option>
       <option value="pdf">pdf</option>
+      <expand macro="list_string_san"/>
     </param>
-    <param name="param_labeling_element" display="radio" type="select" optional="False" value="C" label="Which element (single letter code) is labeled" help="(-labeling_element) ">
+    <param name="qc_output_directory" argument="-qc_output_directory" type="text" optional="true" value="" label="Output directory for the quality report" help="">
+      <expand macro="list_string_san"/>
+    </param>
+    <param name="labeling_element" argument="-labeling_element" display="radio" type="select" optional="false" label="Which element (single letter code) is labeled" help="">
       <option value="C" selected="true">C</option>
       <option value="N">N</option>
       <option value="H">H</option>
       <option value="O">O</option>
+      <expand macro="list_string_san"/>
     </param>
-    <param name="param_use_unassigned_ids" display="radio" type="boolean" truevalue="-use_unassigned_ids" falsevalue="" checked="false" optional="True" label="Include identifications not assigned to a feature in pattern detection" help="(-use_unassigned_ids) "/>
-    <param name="param_use_averagine_ids" display="radio" type="boolean" truevalue="-use_averagine_ids" falsevalue="" checked="false" optional="True" label="Use averagine peptides as model to perform pattern detection on unidentified peptides" help="(-use_averagine_ids) "/>
-    <param name="param_report_natural_peptides" display="radio" type="boolean" truevalue="-report_natural_peptides" falsevalue="" checked="false" optional="True" label="Whether purely natural peptides are reported in the quality report" help="(-report_natural_peptides) "/>
-    <param name="param_filter_monoisotopic" display="radio" type="boolean" truevalue="-filter_monoisotopic" falsevalue="" checked="false" optional="True" label="Try to filter out mono-isotopic patterns to improve detection of low RIA patterns" help="(-filter_monoisotopic) "/>
-    <param name="param_cluster" display="radio" type="boolean" truevalue="-cluster" falsevalue="" checked="false" optional="True" label="Perform grouping" help="(-cluster) "/>
-    <param name="param_collection" type="boolean" checked="true" label="output images as collection" help="if enabled images are written to a collection amd to a webpage otherwise (pdf is always written to a collection)"/>
-    <expand macro="advanced_options">
-      <param name="param_min_correlation_distance_to_averagine" type="float" value="-1.0" label="Minimum difference in correlation between incorporation pattern and averagine pattern" help="(-min_correlation_distance_to_averagine) Positive values filter all RIAs passing the correlation threshold but that also show a better correlation to an averagine peptide. Disabled for values &lt;= -1"/>
-      <param name="param_pattern_15N_TIC_threshold" type="float" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help="(-pattern_15N_TIC_threshold) "/>
-      <param name="param_pattern_13C_TIC_threshold" type="float" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help="(-pattern_13C_TIC_threshold) "/>
-      <param name="param_pattern_2H_TIC_threshold" type="float" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help="(-pattern_2H_TIC_threshold) "/>
-      <param name="param_pattern_18O_TIC_threshold" type="float" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help="(-pattern_18O_TIC_threshold) "/>
-      <param name="param_heatmap_bins" type="integer" value="20" label="Number of RIA bins for heat map generation" help="(-heatmap_bins) "/>
-      <param name="param_observed_peak_fraction" type="float" value="0.5" label="Fraction of observed/expected peaks" help="(-observed_peak_fraction) "/>
-      <param name="param_min_consecutive_isotopes" type="integer" value="2" label="Minimum number of consecutive isotopic intensities needed" help="(-min_consecutive_isotopes) "/>
-      <param name="param_score_plot_yaxis_min" type="float" value="0.0" label="The minimum value of the score axis" help="(-score_plot_yaxis_min) Values smaller than zero usually only make sense if the observed peak fraction is set to 0"/>
-      <param name="param_collect_method" display="radio" type="select" optional="False" value="correlation_maximum" label="How RIAs are collected" help="(-collect_method) ">
+    <param name="use_unassigned_ids" argument="-use_unassigned_ids" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Include identifications not assigned to a feature in pattern detection" help=""/>
+    <param name="use_averagine_ids" argument="-use_averagine_ids" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use averagine peptides as model to perform pattern detection on unidentified peptides" help=""/>
+    <param name="report_natural_peptides" argument="-report_natural_peptides" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Whether purely natural peptides are reported in the quality report" help=""/>
+    <param name="filter_monoisotopic" argument="-filter_monoisotopic" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Try to filter out mono-isotopic patterns to improve detection of low RIA patterns" help=""/>
+    <param name="cluster" argument="-cluster" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Perform grouping" help=""/>
+    <expand macro="adv_opts_macro">
+      <param name="min_correlation_distance_to_averagine" argument="-min_correlation_distance_to_averagine" type="float" optional="true" value="-1.0" label="Minimum difference in correlation between incorporation pattern and averagine pattern" help="Positive values filter all RIAs passing the correlation threshold but that also show a better correlation to an averagine peptide. Disabled for values &lt;= -1"/>
+      <param name="pattern_15N_TIC_threshold" argument="-pattern_15N_TIC_threshold" type="float" optional="true" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help=""/>
+      <param name="pattern_13C_TIC_threshold" argument="-pattern_13C_TIC_threshold" type="float" optional="true" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help=""/>
+      <param name="pattern_2H_TIC_threshold" argument="-pattern_2H_TIC_threshold" type="float" optional="true" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help=""/>
+      <param name="pattern_18O_TIC_threshold" argument="-pattern_18O_TIC_threshold" type="float" optional="true" value="0.95" label="The most intense peaks of the theoretical pattern contributing to at least this TIC fraction are taken into account" help=""/>
+      <param name="heatmap_bins" argument="-heatmap_bins" type="integer" optional="true" value="20" label="Number of RIA bins for heat map generation" help=""/>
+      <param name="observed_peak_fraction" argument="-observed_peak_fraction" type="float" optional="true" value="0.5" label="Fraction of observed/expected peaks" help=""/>
+      <param name="min_consecutive_isotopes" argument="-min_consecutive_isotopes" type="integer" optional="true" value="2" label="Minimum number of consecutive isotopic intensities needed" help=""/>
+      <param name="score_plot_yaxis_min" argument="-score_plot_yaxis_min" type="float" optional="true" value="0.0" label="The minimum value of the score axis" help="Values smaller than zero usually only make sense if the observed peak fraction is set to 0"/>
+      <param name="collect_method" argument="-collect_method" display="radio" type="select" optional="false" label="How RIAs are collected" help="">
         <option value="correlation_maximum" selected="true">correlation_maximum</option>
         <option value="decomposition_maximum">decomposition_maximum</option>
+        <expand macro="list_string_san"/>
       </param>
-      <param name="param_lowRIA_correlation_threshold" type="float" value="-1.0" label="Correlation threshold for reporting low RIA patterns" help="(-lowRIA_correlation_threshold) Disable and take correlation_threshold value for negative values"/>
-      <param name="param_force" display="radio" type="boolean" truevalue="-force" falsevalue="" checked="false" optional="True" label="Overwrite tool specific checks" help="(-force) "/>
+      <param name="lowRIA_correlation_threshold" argument="-lowRIA_correlation_threshold" type="float" optional="true" value="-1.0" label="Correlation threshold for reporting low RIA patterns" help="Disable and take correlation_threshold value for negative values"/>
+      <param name="force" argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overwrite tool specific checks" help=""/>
+      <param name="test" argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
+        <expand macro="list_string_san"/>
+      </param>
     </expand>
+    <param name="OPTIONAL_OUTPUTS" type="select" multiple="true" label="Optional outputs" optional="true">
+      <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option>
+    </param>
   </inputs>
   <outputs>
-    <data name="param_out_csv" format="tabular" label="${tool.name} on ${on_string}: tabular"/>
-    <data name="param_out_peptide_centric_csv" format="tabular" label="${tool.name} on ${on_string}: peptide centric tabular"/>
-    <data format="html" name="html_file" label="${tool.name} on ${on_string}: Webpage">
-      <filter>not param_collection and (param_plot_extension == 'png' or param_plot_extension == 'svg')</filter>
+    <data name="out_csv" label="${tool.name} on ${on_string}: out_csv" format="csv"/>
+    <data name="out_peptide_centric_csv" label="${tool.name} on ${on_string}: out_peptide_centric_csv" format="csv"/>
+    <data name="ctd_out" format="xml" label="${tool.name} on ${on_string}: ctd">
+      <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
     </data>
-    <collection name="images" type="list" label="${tool.name} on ${on_string}: images">
-      <filter>param_collection or param_plot_extension == 'pdf'</filter>
-      <discover_datasets pattern="__name_and_ext__" directory="images" />
-    </collection>
   </outputs>
   <tests>
-    <test>
-      <param name="param_in_mzML" value="MetaProSIP_1_input.mzML" ftype="mzml"/>
-      <param name="param_in_fasta" value="MetaProSIP_1_input.fasta" ftype="fasta"/>
-      <param name="param_in_featureXML" value="MetaProSIP_1_input.featureXML" ftype="featurexml"/>
-      <output name="param_out_csv" file="MetaProSIP_1_output_1.csv"/>
-      <output name="param_out_peptide_centric_csv" file="MetaProSIP_1_output_2.csv"  compare="sim_size" lines_diff="2"/>
-    </test>
+    <expand macro="autotest_MetaProSIP"/>
+    <expand macro="manutest_MetaProSIP"/>
   </tests>
-  <help>Performs proteinSIP on peptide features for elemental flux analysis.
+  <help><![CDATA[Performs proteinSIP on peptide features for elemental flux analysis.
 
-	  ** Galaxy specific notes **
 
-	  The peptide centric tabular data set generated by the tool is not rendered properly by Galaxy, because it has more than 50 columns. You might extract columns of interst. 
-  </help>
-<expand macro="references"/>
+For more information, visit http://www.openms.de/documentation/UTILS_MetaProSIP.html]]></help>
+  <expand macro="references"/>
 </tool>