def main(): parser = argparse.ArgumentParser(description='') parser.add_argument("benchmarks", nargs="+", help="The benchmarks to run.") for option in sorted(BOTS): parser.add_argument(option, dest='bots', action='append_const', const=BOTS[option], help='Add %s trybot.' % BOTS[option]) options = parser.parse_args() if not options.bots: print 'No trybots specified. Using default %s.' % ','.join( DEFAULT_BOTS) options.bots = DEFAULT_BOTS cl = Changelist() if not cl.GetIssue(): print 'Need to upload first' return 1 props = cl.GetIssueProperties() if props.get('closed'): print 'Cannot send tryjobs for a closed CL' return 1 if props.get('private'): print 'Cannot use trybots with private issue' return 1 if not options.benchmarks: print 'Please specify the benchmarks to run as arguments.' return 1 masters = { 'internal.client.v8': dict( (b, options.benchmarks) for b in options.bots), } cl.RpcServer().trigger_distributed_try_jobs(cl.GetIssue(), cl.GetMostRecentPatchset(), cl.GetBranch(), False, None, masters) return 0
def main(tests): cl = Changelist() if not cl.GetIssue(): print 'Need to upload first' return 1 props = cl.GetIssueProperties() if props.get('closed'): print 'Cannot send tryjobs for a closed CL' return 1 if props.get('private'): print 'Cannot use trybots with private issue' return 1 if not tests: print 'Please specify the benchmarks to run as arguments.' return 1 masters = {'internal.client.v8': dict((b, tests) for b in BOTS)} cl.RpcServer().trigger_distributed_try_jobs( cl.GetIssue(), cl.GetMostRecentPatchset(), cl.GetBranch(), False, None, masters) return 0