ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CRAB/python/SchedulerGlidein.py
Revision: 1.19
Committed: Thu Jun 14 15:53:44 2012 UTC (12 years, 10 months ago) by belforte
Content type: text/x-python
Branch: MAIN
CVS Tags: CRAB_2_9_1, CRAB_2_9_1_pre2, CRAB_2_9_1_pre1, CRAB_2_9_0, CRAB_2_9_0_pre2, CRAB_2_9_0_pre1, CRAB_2_8_8, CRAB_2_8_8_pre1, CRAB_2_8_7_patch3, CRAB_2_8_7_patch2, CRAB_2_8_7_patch1, CRAB_2_8_7, CRAB_2_8_7_pre2, CRAB_2_8_7_pre1, CRAB_2_8_6, CRAB_2_8_6_pre1, CRAB_2_8_5_patch3, CRAB_2_8_5_patch2, CRAB_2_8_5_patch1, CRAB_2_8_5, CRAB_2_8_5_pre5, CRAB_2_8_5_pre4, CRAB_2_8_5_pre3, CRAB_2_8_4_patch3, CRAB_2_8_5_pre2, CRAB_2_8_4_patch2, CRAB_2_8_5_pre1, CRAB_2_8_4_patch1, CRAB_2_8_4, CRAB_2_8_4_pre5, CRAB_2_8_4_pre4, CRAB_2_8_4_pre3, CRAB_2_8_4_pre2, CRAB_2_8_4_pre1, CRAB_2_8_3, CRAB_2_8_3_pre4, CRAB_2_8_3_pre3, CRAB_2_8_3_pre2, CRAB_2_8_3_pre1, CRAB_2_8_2_patch1, CRAB_2_8_2, CRAB_2_8_2_pre5, CRAB_2_8_2_pre4, CRAB_2_8_2_pre3, HEAD
Changes since 1.18: +3 -2 lines
Log Message:
set OSB limit to 55MB see https://savannah.cern.ch/bugs/index.php?94560

File Contents

# Content
1 """
2 Glidein specific portions of the interface to the BossLite scheduler
3 """
4
5 __revision__ = "$Id: SchedulerGlidein.py,v 1.18 2009/09/03 16:14:55 ewv Exp $"
6 __version__ = "$Revision: 1.18 $"
7
8 from SchedulerCondorCommon import SchedulerCondorCommon
9 import common
10
11 class SchedulerGlidein(SchedulerCondorCommon):
12 """
13 Glidein specific portions of the interface to the BossLite scheduler
14 """
15
16 def __init__(self):
17 SchedulerCondorCommon.__init__(self,"GLIDEIN")
18 self.OSBsize = 55*1000*1000 # 55MB
19 self.environment_unique_identifier = '$Glidein_MonitorID'
20 return
21
22
23 def sched_parameter(self, i, task):
24 """
25 Return scheduler-specific parameters
26 """
27 jobParams = SchedulerCondorCommon.sched_parameter(self, i, task)
28 seDest = task.jobs[i-1]['dlsDestination']
29 ceDest = self.seListToCElist(seDest, onlyOSG=False)
30 ceString = ','.join(ceDest)
31
32 jobParams += '+DESIRED_Gatekeepers = "'+ceString+'"; '
33 jobParams += '+DESIRED_Archs = "INTEL,X86_64"; '
34 jobParams += "Requirements = stringListMember(GLIDEIN_Gatekeeper,DESIRED_Gatekeepers) && stringListMember(Arch,DESIRED_Archs); "
35 if (self.EDG_clock_time):
36 jobParams += '+MaxWallTimeMins = '+self.EDG_clock_time+'; '
37 else:
38 jobParams += '+MaxWallTimeMins = 1440; '
39
40 common._db.updateTask_({'jobType':jobParams})
41 return jobParams # Not sure I even need to return anything
42
43
44 def listMatch(self, seList, full, onlyOSG=False):
45 """
46 Check the compatibility of available resources
47 """
48 ceDest = SchedulerCondorCommon.listMatch(self, seList, full, onlyOSG=False)
49 return ceDest
50
51
52 def envUniqueID(self):
53 msg = 'JobID for ML monitoring is created for Glidein scheduler: %s'%id
54 common.logger.debug(msg)
55 return '$Glidein_MonitorID'