Example #1
0
def main(args):
    with open(config.get_json_path(), 'rb') as fp:
        patches = data.parse_json(fp.read())

    working_dir = config.get_working_dir()
    commit = gitcmd.get_sha1(config.get_master_branch())

    bots = args.bots
    if not bots:
        bots = config.get_buildbots()

    for bot in bots:
        q = config.get_buildbot_query(bot)
        run_bot(patches, working_dir, commit, bot, q)
Example #2
0
def main(args):
    with open(config.get_json_path(), 'rb') as fp:
        patches = data.parse_json(fp.read())

    working_dir = config.get_working_dir()
    commit = gitcmd.get_sha1(config.get_master_branch())

    bots = args.bots
    if not bots:
        bots = config.get_buildbots()

    for bot in bots:
        q = config.get_buildbot_query(bot)
        run_bot(patches, working_dir, commit, bot, q)
Example #3
0
def get_merges(since):
    refspec = config.get_master_branch()
    o = git('log', '--merges', '--first-parent',
            '--pretty=format:%H\n%P\n%cn\n%ce', '--since=%s' % since, refspec)

    merged_heads = {}
    lines = o.split('\n')
    for i in range(0, len(lines), 4):
        if (i + 4) >= len(lines):
            continue

        commit = lines[i]
        heads = lines[i + 1].split()
        for head in heads:
            merged_heads[head] = { 'commit': commit,
                                   'committer': { 'name': lines[i + 2],
                                                  'email': lines[i + 3] } }

    return merged_heads
Example #4
0
def is_committed(series):
    committed = False

    if is_pull_request(series):
        if 'commit' in series['messages'][0]['pull-request']:
            return True
        elif is_committed_in_branch(series, config.get_master_branch()):
            return True
        return False

    for message in series['messages']:
        if message.has_key('cover') and message['cover']:
            continue

        if not message.has_key('commit'):
            return False
        else:
            committed = True

    return committed
Example #5
0
def is_committed(series):
    committed = False

    if is_pull_request(series):
        if "commit" in series["messages"][0]["pull-request"]:
            return True
        elif is_committed_in_branch(series, config.get_master_branch()):
            return True
        return False

    for message in series["messages"]:
        if message.has_key("cover") and message["cover"]:
            continue

        if not message.has_key("commit"):
            return False
        else:
            committed = True

    return committed
Example #6
0
def is_committed(series):
    committed = False

    if is_pull_request(series):
        if 'commit' in series['messages'][0]['pull-request']:
            return True
        elif is_committed_in_branch(series, config.get_master_branch()):
            return True
        return False

    for message in series['messages']:
        if message.has_key('cover') and message['cover']:
            continue

        if not message.has_key('commit'):
            return False
        else:
            committed = True

    return committed
Example #7
0
def get_commits(since, trees):
    mapping = {}

    git_dir = config.get_git_dir()
    master_branch = config.get_master_branch()

    for branch in trees:
        if branch == master_branch:
            refspec = branch
        else:
            refspec = '%s..%s' % (master_branch, branch)

        pairs = []
        o = git('log', '--pretty=format:%H\n%s\n%cn\n%ce', '--since=%s' % since, refspec)
        lines = o.split('\n')
        for i in range(0, len(lines), 4):
            if (i + 3) >= len(lines):
                continue

            pairs.append({ 'hexsha': lines[i],
                           'summary': lines[i + 1],
                           'branch': branch,
                           'committer': { 'name': lines[i + 2],
                                          'email': lines[i + 3] } })

        for commit in pairs:
            s = commit['summary']
            if mapping.has_key(s):
                hsh = mapping[s]
                if type(hsh) != list:
                    mapping[s] = [commit]
                mapping[s].append(commit)
            else:
                mapping[s] = commit

    return mapping