diff IDMerger.xml @ 13:4975b2cf0eda draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit ddf41e8bda1ba065f5cdec98e93dee8165ffc1b9"
author galaxyp
date Thu, 27 Aug 2020 23:20:37 +0000
parents 2d2fc029cea7
children 3a28f5cbd413
line wrap: on
line diff
--- a/IDMerger.xml	Wed May 15 06:50:01 2019 -0400
+++ b/IDMerger.xml	Thu Aug 27 23:20:37 2020 +0000
@@ -1,75 +1,82 @@
 <?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: [File Handling]-->
-<tool id="IDMerger" name="IDMerger" version="2.3.0">
+<tool id="IDMerger" name="IDMerger" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@" profile="20.05">
   <description>Merges several protein/peptide identification files into one file.</description>
   <macros>
     <token name="@EXECUTABLE@">IDMerger</token>
     <import>macros.xml</import>
+    <import>macros_autotest.xml</import>
+    <import>macros_test.xml</import>
   </macros>
-  <expand macro="references"/>
+  <expand macro="requirements"/>
   <expand macro="stdio"/>
-  <expand macro="requirements"/>
-  <command detect_errors="aggressive"><![CDATA[IDMerger
+  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
+@EXT_FOO@
+#import re
 
+## Preprocessing
+mkdir in &&
+${ ' '.join(["ln -s '%s' 'in/%s.%s' &&" % (_, re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _]) }
+mkdir out &&
+#if $add_to:
+  mkdir add_to &&
+  ln -s '$add_to' 'add_to/${re.sub("[^\w\-_]", "_", $add_to.element_identifier)}.$gxy2omsext($add_to.ext)' &&
+#end if
+
+## Main program call
+
+set -o pipefail &&
+@EXECUTABLE@ -write_ctd ./ &&
+python3 '$__tool_directory__/fill_ctd.py' '@EXECUTABLE@.ctd' '$args_json' '$hardcoded_json' &&
+@EXECUTABLE@ -ini @EXECUTABLE@.ctd
 -in
-#if $merge.select_merge == 'single':
-    #for $token in $merge.param_in:
-      $token
-    #end for
-#else:
-    #for $token in $merge.inputs:
-      $token.param_in
-    #end for
+${' '.join(["'in/%s.%s'"%(re.sub('[^\w\-_]', '_', _.element_identifier), $gxy2omsext(_.ext)) for _ in $in if _])}
+-out
+'out/output.${gxy2omsext("idxml")}'
+#if $add_to:
+  -add_to
+  'add_to/${re.sub("[^\w\-_]", "_", $add_to.element_identifier)}.$gxy2omsext($add_to.ext)'
 #end if
 
-#if $param_out:
-  -out $param_out
-#end if
-#if $param_add_to:
-  -add_to $param_add_to
-#end if
-#if $param_annotate_file_origin:
-  -annotate_file_origin
-#end if
-#if $param_pepxml_protxml:
-  -pepxml_protxml
-#end if
-#if $adv_opts.adv_opts_selector=='advanced':
-    #if $adv_opts.param_force:
-      -force
-    #end if
-#end if
-]]></command>
+## Postprocessing
+&& mv 'out/output.${gxy2omsext("idxml")}' '$out'
+#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[{"log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
+  </configfiles>
   <inputs>
-
-    <conditional name="merge">
-        <param help="" label="Reduce collections" name="select_merge" type="select">
-            <option selected="True" value="single">Reduce collections into one file</option>
-            <option value="repeat">Reduce collections, by aggregating single files of multiple collections</option>
-        </param>
-        <when value="single">
-            <param name="param_in" type="data" multiple="True" format="idxml" label="Input files separated by blanks" help="(-in) "/>
-        </when>
-        <when value="repeat">
-           <repeat name="inputs" min="2" title="Input idxml files">
-               <param name="param_in" type="data" format="idxml" label="Input file" help="(-in) "/>
-           </repeat>
-        </when>
-    </conditional>
-    
-    <param name="param_add_to" type="data" format="idxml" optional="True" label="Optional input file" help="(-add_to) IDs from 'in' are added to this file, but only if the (modified) peptide sequences are not present yet (considering only best hits per spectrum)"/>
-    <param name="param_annotate_file_origin" display="radio" type="boolean" truevalue="-annotate_file_origin" falsevalue="" checked="false" optional="True" label="Store the original filename in each protein/peptide identification (meta value: file_origin)" help="(-annotate_file_origin) "/>
-    <param name="param_pepxml_protxml" display="radio" type="boolean" truevalue="-pepxml_protxml" falsevalue="" checked="false" optional="True" label="Merge idXML files derived from a pepXML and corresponding protXML file" help="(-pepxml_protxml) &lt;br&gt;Exactly two input files are expected in this case. Not compatible with 'add_to'"/>
-    <expand macro="advanced_options">
-      <param name="param_force" display="radio" type="boolean" truevalue="-force" falsevalue="" checked="false" optional="True" label="Overwrite tool specific checks" help="(-force) "/>
+    <param name="in" argument="-in" type="data" format="idxml" multiple="true" optional="false" label="Input files separated by blanks" help=" select idxml data sets(s)"/>
+    <param name="add_to" argument="-add_to" type="data" format="idxml" optional="true" label="Optional input file" help="IDs from 'in' are added to this file, but only if the (modified) peptide sequences are not present yet (considering only best hits per spectrum) select idxml data sets(s)"/>
+    <param name="annotate_file_origin" argument="-annotate_file_origin" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Store the original filename in each protein/peptide identification (meta value: file_origin)" help=""/>
+    <param name="pepxml_protxml" argument="-pepxml_protxml" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Merge idXML files derived from a pepXML and corresponding protXML file" help="Exactly two input files are expected in this case. Not compatible with 'add_to'"/>
+    <param name="merge_proteins_add_PSMs" argument="-merge_proteins_add_PSMs" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Merge all identified proteins by accession into one protein identification run but keep all the PSMs with updated links to potential new protein ID#s" help="Not compatible with 'add_to'"/>
+    <expand macro="adv_opts_macro">
+      <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" format="idxml"/>
+    <data name="out" label="${tool.name} on ${on_string}: out" format="idxml"/>
+    <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>
   </outputs>
-  <help>Merges several protein/peptide identification files into one file.
+  <tests>
+    <expand macro="autotest_IDMerger"/>
+    <expand macro="manutest_IDMerger"/>
+  </tests>
+  <help><![CDATA[Merges several protein/peptide identification files into one file.
 
 
-For more information, visit https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/2.3.0/html/TOPP_IDMerger.html</help>
+For more information, visit http://www.openms.de/documentation/TOPP_IDMerger.html]]></help>
+  <expand macro="references"/>
 </tool>