diff modify_mqpar.py @ 15:97a7f34fcb6a draft

"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/maxquant commit 641b1d3af3b589a861cde2dc2f8803c9b79df7be"
author galaxyp
date Wed, 11 Aug 2021 09:24:23 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/modify_mqpar.py	Wed Aug 11 09:24:23 2021 +0000
@@ -0,0 +1,34 @@
+"Modify a given mqpar.xml to run Galaxy MaxQuant with it."
+
+import argparse
+import os
+
+from mqparam import MQParam
+
+parser = argparse.ArgumentParser()
+
+arguments = ('--infiles',
+             '--version',
+             '--num_threads',
+             '--substitution_rx',
+             '--fasta_files',
+             '--description_parse_rule',
+             '--identifier_parse_rule',
+             'mqpar')
+
+for arg in arguments:
+    parser.add_argument(arg)
+
+args = parser.parse_args()
+
+mqpar_out = os.path.join(os.getcwd(), 'mqpar.xml')
+infiles = [os.path.join(os.getcwd(), f) for f in args.infiles.split(',')]
+mqparam = MQParam(args.mqpar, None, substitution_rx=args.substitution_rx)
+if mqparam.version != args.version:
+    raise Exception('mqpar version is ' + mqparam.version + '. Tool uses version {}.'.format(args.version))
+mqparam.translate(infiles)
+mqparam.add_fasta_files(args.fasta_files.split(','),
+                        {'identifierParseRule': args.identifier_parse_rule,
+                         'descriptionParseRule': args.description_parse_rule})
+mqparam.set_simple_param('numThreads', args.num_threads)
+mqparam.write('mqpar.xml')