@@ -28,6 +28,7 @@ class AfanasyScheduler(CallbackServerMixin, PyScheduler):
28
28
def __init__ (self , scheduler , name ):
29
29
PyScheduler .__init__ (self , scheduler , name )
30
30
CallbackServerMixin .__init__ (self , False )
31
+ self .parmprefix = 'afanasy'
31
32
self ._initData ()
32
33
33
34
@@ -55,23 +56,25 @@ def _constructJob(self):
55
56
job = af .Job (self ['job_name' ].evaluateString ())
56
57
57
58
job .setBranch (self ['job_branch' ].evaluateString ())
58
- job .setDependMask (self ['depend_mask' ].evaluateString ())
59
- job .setDependMaskGlobal (self ['depend_mask_global' ].evaluateString ())
60
59
job .setPriority (self ['priority' ].evaluateInt ())
61
- job .setMaxRunningTasks (self ['max_runtasks ' ].evaluateInt ())
62
- job .setMaxRunTasksPerHost (self ['maxperhost ' ].evaluateInt ())
63
- job .setHostsMask (self ['hosts_mask ' ].evaluateString ())
64
- job .setHostsMaskExclude (self ['hosts_mask_exclude ' ].evaluateString ())
60
+ job .setMaxRunningTasks (self ['afanasy_max_running_tasks ' ].evaluateInt ())
61
+ job .setMaxRunTasksPerHost (self ['afanasy_max_running_tasks_per_host ' ].evaluateInt ())
62
+ job .setHostsMask (self ['afanasy_hosts_mask ' ].evaluateString ())
63
+ job .setHostsMaskExclude (self ['afanasy_hosts_mask_exclude ' ].evaluateString ())
65
64
66
65
return job
67
66
68
67
69
68
def _constructBlock (self , work_item ):
70
69
block = af .Block (work_item .node .name , 'hbatch_mantra' )
71
- block .setCapacity (self ['capacity' ].evaluateInt ())
72
- block .setNeedMemory (self ['min_memory' ].evaluateInt ()* 1024 )
73
- block .setTaskMinRunTime (self ['minruntime' ].evaluateInt ())
74
- block .setTaskMaxRunTime (int (self ['maxruntime' ].evaluateFloat ()* 3600.0 ))
70
+ block .setCapacity (self .evaluateIntOverride (work_item .node , self .parmprefix , 'capacity' , work_item , - 1 ))
71
+ block .setHostsMask (self .evaluateStringOverride (work_item .node , self .parmprefix , 'hosts_mask' , work_item , '' ))
72
+ block .setHostsMaskExclude (self .evaluateStringOverride (work_item .node , self .parmprefix , 'hosts_mask_exclude' , work_item , '' ))
73
+ block .setMaxRunningTasks (self .evaluateIntOverride (work_item .node , self .parmprefix , 'max_running_tasks' , work_item , - 1 ))
74
+ block .setMaxRunTasksPerHost (self .evaluateIntOverride (work_item .node , self .parmprefix , 'max_running_tasks_per_host' , work_item , - 1 ))
75
+ block .setNeedMemory (self .evaluateIntOverride (work_item .node , self .parmprefix , 'need_memory' , work_item , - 1 )* 1024 )
76
+ block .setTaskMinRunTime (self .evaluateIntOverride (work_item .node , self .parmprefix , 'task_min_run_time' , work_item , - 1 ))
77
+ block .setTaskMaxRunTime (int (self .evaluateFloatOverride (work_item .node , self .parmprefix , 'task_max_run_time' , work_item , - 1 )* 3600.0 ))
75
78
# Check service and parser:
76
79
# PDG uses "ALF_PROGRESS" everywhere
77
80
block .setParser ('mantra' )
0 commit comments