def get_pushlogs(startdate, enddate, branches=None): """Return a list of pushlogs with changesets. """ branches = branches or get_all_branches() plrdm = factory.get_plrdm() pl_dict = plrdm.get_pushlog_dict(startdate, enddate, branches) plrdm.disconnect() return pl_dict
def get_not_referenced(project, startdate, enddate, branches=None): """ Return a list of test runs by in pushlogs not in Datazilla ``project`` The PerformanceTestModel project. Note: NOT the PushLogModel project. """ branches = branches or get_all_branches() ptrdm = factory.get_ptrdm(project) tr_set = ptrdm.get_distinct_test_run_revisions() ptrdm.disconnect() plrdm = factory.get_plrdm() pl_dict = plrdm.get_pushlog_dict(startdate, enddate, branches) plrdm.disconnect() # gather matching and non-matching sets branch_wo_match = {} branch_w_match = {} for pl, data in pl_dict.iteritems(): rev_list = data["revisions"] if not len(tr_set.intersection(set(rev_list))): bucket = branch_wo_match else: bucket = branch_w_match br_list = bucket.setdefault(data["branch_name"], {}) pushlog_list = br_list.setdefault("pushlogs", []) pushlog_list.append({ "push_id": pl, "revisions": rev_list, }) return { "with_matching_test_run": branch_w_match, "without_matching_test_run": branch_wo_match, }
def get_db_size(): """Return the database size, on disk in MB""" plrdm = factory.get_plrdm() size = plrdm.get_db_size() plrdm.disconnect() return size