bitbake: runqueue: Allow passing of success/failure handlers to runqueue_process_waitpid()
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
parent
8c23850453
commit
6598f98ba8
|
@ -956,7 +956,7 @@ class RunQueue:
|
||||||
self.build_pipes[pipe].read()
|
self.build_pipes[pipe].read()
|
||||||
|
|
||||||
if self.stats.active > 0:
|
if self.stats.active > 0:
|
||||||
if self.runqueue_process_waitpid() is None:
|
if self.runqueue_process_waitpid(self.task_complete, self.task_fail) is None:
|
||||||
return
|
return
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -975,7 +975,7 @@ class RunQueue:
|
||||||
self.state = runQueueComplete
|
self.state = runQueueComplete
|
||||||
return
|
return
|
||||||
|
|
||||||
def runqueue_process_waitpid(self):
|
def runqueue_process_waitpid(self, success, failure):
|
||||||
"""
|
"""
|
||||||
Return none is there are no processes awaiting result collection, otherwise
|
Return none is there are no processes awaiting result collection, otherwise
|
||||||
collect the process exit codes and close the information pipe.
|
collect the process exit codes and close the information pipe.
|
||||||
|
@ -988,9 +988,9 @@ class RunQueue:
|
||||||
self.build_pipes[result[0]].close()
|
self.build_pipes[result[0]].close()
|
||||||
del self.build_pipes[result[0]]
|
del self.build_pipes[result[0]]
|
||||||
if result[1] != 0:
|
if result[1] != 0:
|
||||||
self.task_fail(task, result[1])
|
failure(task, result[1])
|
||||||
else:
|
else:
|
||||||
self.task_complete(task)
|
success(task)
|
||||||
self.stats.taskCompleted()
|
self.stats.taskCompleted()
|
||||||
bb.event.fire(runQueueTaskCompleted(task, self.stats, self), self.cfgData)
|
bb.event.fire(runQueueTaskCompleted(task, self.stats, self), self.cfgData)
|
||||||
|
|
||||||
|
@ -1016,7 +1016,7 @@ class RunQueue:
|
||||||
try:
|
try:
|
||||||
while self.stats.active > 0:
|
while self.stats.active > 0:
|
||||||
bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData)
|
bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData)
|
||||||
if self.runqueue_process_waitpid() is None:
|
if self.runqueue_process_waitpid(self.task_complete, self.task_fail) is None:
|
||||||
return
|
return
|
||||||
except:
|
except:
|
||||||
self.finish_runqueue_now()
|
self.finish_runqueue_now()
|
||||||
|
|
Loading…
Reference in New Issue