From c9080c8846d4cfe01fc2b1caad8c9500c32ea5d2 Mon Sep 17 00:00:00 2001 From: Eric Boren Date: Wed, 18 Oct 2017 12:53:49 -0400 Subject: bin/try: Add interactive mode Bug: skia: Change-Id: Iceb1834f1a3aa7594227ff3adf187c650aa30367 Reviewed-on: https://skia-review.googlesource.com/61480 Commit-Queue: Eric Boren Reviewed-by: Ravi Mistry --- bin/try.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'bin') diff --git a/bin/try.py b/bin/try.py index ec1f89119d..e45c117dbb 100755 --- a/bin/try.py +++ b/bin/try.py @@ -71,12 +71,12 @@ def main(): jobs.append(get_jobs(REPO_INTERNAL)) jobs.extend(update_meta_config.CQ_INCLUDE_CHROMIUM_TRYBOTS) if args.job: - new_jobs = [] + filtered_jobs = [] for bucket, job_list in jobs: filtered = [j for j in job_list if re.search(args.job, j)] if len(filtered) > 0: - new_jobs.append((bucket, filtered)) - jobs = new_jobs + filtered_jobs.append((bucket, filtered)) + jobs = filtered_jobs # Display the list of jobs. if len(jobs) == 0: @@ -94,9 +94,22 @@ def main(): return # Prompt before triggering jobs. - resp = raw_input('\nDo you want to trigger these jobs? (y/n) ') - if resp != 'y': + resp = raw_input('\nDo you want to trigger these jobs? (y/n or i for ' + 'interactive): ') + print '' + if resp != 'y' and resp != 'i': sys.exit(1) + if resp == 'i': + filtered_jobs = [] + for bucket, job_list in jobs: + new_job_list = [] + for j in job_list: + incl = raw_input(('Trigger %s? (y/n): ' % j)) + if incl == 'y': + new_job_list.append(j) + if len(new_job_list) > 0: + filtered_jobs.append((bucket, new_job_list)) + jobs = filtered_jobs # Trigger the try jobs. for bucket, job_list in jobs: -- cgit v1.2.3