avoid waiting on empty task list in newRepo tasks

This commit is contained in:
Mike McLean 2015-12-01 19:50:20 -05:00
parent 4d981318dc
commit bf57dfca5b

View file

@ -4252,18 +4252,23 @@ class NewRepoTask(BaseTaskHandler):
label=arch, label=arch,
parent=self.id, parent=self.id,
arch='noarch') arch='noarch')
# wait for subtasks to finish
results = self.wait(subtasks.values(), all=True, failany=True) # gather subtask results
data = {} data = {}
for (arch, task_id) in subtasks.iteritems(): if subtasks:
data[arch] = results[task_id] results = self.wait(subtasks.values(), all=True, failany=True)
self.logger.debug("DEBUG: %r : %r " % (arch,data[arch],)) for (arch, task_id) in subtasks.iteritems():
data[arch] = results[task_id]
self.logger.debug("DEBUG: %r : %r " % (arch,data[arch],))
# finalize
kwargs = {} kwargs = {}
if event is not None: if event is not None:
kwargs['expire'] = True kwargs['expire'] = True
self.session.host.repoDone(repo_id, data, **kwargs) self.session.host.repoDone(repo_id, data, **kwargs)
return repo_id, event_id return repo_id, event_id
class CreaterepoTask(BaseTaskHandler): class CreaterepoTask(BaseTaskHandler):
Methods = ['createrepo'] Methods = ['createrepo']