def populate(task): from bkr.server.tasks import Tasks controller = Tasks() filename = os.path.join(controller.task_dir, task.rpm) if not os.path.exists(filename): print 'Skipping missing %s' % filename return raw_taskinfo = controller.read_taskinfo(filename) tinfo = testinfo.parse_string(raw_taskinfo['desc'], raise_errors=False) if tinfo.owner: task.owner = tinfo.owner.decode('utf8') if tinfo.priority: task.priority = tinfo.priority.decode('utf8') task.destructive = tinfo.destructive
def setUp(self): with session.begin(): self.arch_one = u'i386' self.osmajor_one = u'testosmajor' self.task_one = data_setup.create_task( name=u'/a/a/a', exclude_arches=[self.arch_one]) self.task_two = data_setup.create_task( name=u'/a/a/b', exclude_arches=[self.arch_one]) self.task_three = data_setup.create_task( name=u'/a/a/c', exclude_osmajors=[self.osmajor_one]) data_setup.create_completed_job( task_list=[self.task_one, self.task_two, self.task_three]) self.recipe_tasks = [] t = Tasks() for id in [ t.id for t in [self.task_one, self.task_two, self.task_three] ]: self.recipe_tasks = self.recipe_tasks + self.get_task_query( { 'task_id': id }, False).all()
def get_task_query(self, kw, filter_on_recipe_task_ids=True): t = Tasks() if filter_on_recipe_task_ids: kw['recipe_task_id'] = [r.id for r in self.recipe_tasks] ret = t._do_search({}, **kw) return ret['tasks']