1 """
2 Interface for configuring pre/post icetray scripts
3
4 copyright (c) 2005 the icecube collaboration
5
6 @version: $Revision: $
7 @date: $Date: $
8 @author: Juan Carlos Diaz Velez <juancarlos@icecube.wisc.edu>
9 """
10 import os
11 import glob
12 import types
13 from iceprod.server import grid
14
15 import condor
16 import pbs
17 import sge
18 import swegrid
19
20 __version__ = 'trunk'
21
22 plugins = {}
23
24 plugins['condor'] = condor.Condor
25 plugins['condor_nfs'] = condor.CondorNFS
26 plugins['condor_dag'] = condor.CondorDAG
27 plugins['condor_g'] = condor.CondorG
28 plugins['pbs'] = pbs.Pbs
29
30 plugins['sge'] = sge.SGE
31 plugins['swegrid'] = swegrid.SweGrid
32
33 sep = '.'
34
36 return sep.join(path.split(sep)[:-1])
37
39 return path.split(sep)[-1]
40
42 if plugins.has_key(pname):
43 return plugins[pname]
44 else:
45 modname = 'iceprod.server.plugins.' + dirname(pname)
46 classname = basename(pname)
47 mod = __import__(modname, globals(),locals(),[classname])
48 plugins[pname] = getattr(mod,classname)
49 return plugins[pname]
50
53
56