diff destinations_input_type.py @ 12:15646e937936 draft

planemo upload for repository https://github.com/workflow4metabolomics/xcms commit a6f5f18b3d6130f7d7fbb9f2df856838c6217797
author lecorguille
date Fri, 07 Apr 2017 07:35:01 -0400
parents
children c934dd5c49a9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/destinations_input_type.py	Fri Apr 07 07:35:01 2017 -0400
@@ -0,0 +1,23 @@
+from galaxy.jobs import JobDestination
+import logging
+import os
+
+'''
+This file must be placed in lib/galaxy/jobs/rules/
+'''
+
+def input_type(job):
+    '''
+    This function checks the input file format/extension and decide which destination in the job_conf.xml using
+     - If it's a zip file, we will launch the job in multi-thread mode (-pe thread 8)
+     - If it's an individual file (mzxml, mzml, mzdata or netcdf), the job will use for instance (-pe thread 1)
+    '''
+    log = logging.getLogger(__name__)
+    inp_data = dict( [ ( da.name, da.dataset ) for da in job.input_datasets ] )
+    inp_data.update( [ ( da.name, da.dataset ) for da in job.input_library_datasets ] )
+    input_extension = inp_data[ "input" ].extension
+    log.debug("The input extension is %s" % input_extension)
+    if input_extension in ["mzxml","mzml","mzdata","netcdf"]:
+        return 'thread1-men_free10'
+    else: # zip file
+        return 'thread4-men_free10'