self.state_changed()
self.runNext()
sumTaskWeightings = sum([t.weighting for t in self.tasks])
- self.weightScale = (self.end+1) / float(sumTaskWeightings)
+ self.weightScale = self.end / float(sumTaskWeightings)
def runNext(self):
if self.current_task == len(self.tasks):
# some Jobs might have a better idea of how to cancel a job
self.abort()
-class Task(object) :
+class Task(object):
def __init__(self, job, name):
self.name = name
self.immediate_preconditions = [ ]
class DiskspacePrecondition(Condition):
def __init__(self, diskspace_required):
self.diskspace_required = diskspace_required
- self.diskspace_available = None
+ self.diskspace_available = 0
def check(self, task):
import os
try:
s = os.statvfs(task.job.workspace)
- self.diskspace_available = s.f_bsize * s.f_bavail
+ self.diskspace_available = s.f_bsize * s.f_bavail
return self.diskspace_available >= self.diskspace_required
except OSError:
return False
if task.cmd[0]=='/':
realpath = task.cmd
else:
- realpath = self.cwd + '/' + self.cmd
+ realpath = task.cwd + '/' + task.cmd
self.realpath = realpath
return os.access(realpath, os.X_OK)