From b9443d9fa2a83f4814e735113a8a68461af83c1a Mon Sep 17 00:00:00 2001 From: Ryan Blue Date: Fri, 6 Oct 2017 16:49:55 -0700 Subject: [PATCH] PARQUET-1024: Allow case-insensitive parquet-xxx prefix in PR title. This merges changes from PARQUET-1024 in parquet-mr into parquet-format. Also cleaning up old PRs: Closes #29 Closes #60 --- dev/merge_parquet_pr.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/dev/merge_parquet_pr.py b/dev/merge_parquet_pr.py index dcb7af6b2..4d2ca6d6d 100755 --- a/dev/merge_parquet_pr.py +++ b/dev/merge_parquet_pr.py @@ -79,11 +79,19 @@ def fail(msg): def run_cmd(cmd): - if isinstance(cmd, list): - return subprocess.check_output(cmd) - else: - return subprocess.check_output(cmd.split(" ")) - + try: + if isinstance(cmd, list): + return subprocess.check_output(cmd) + else: + return subprocess.check_output(cmd.split(" ")) + except subprocess.CalledProcessError as e: + # this avoids hiding the stdout / stderr of failed processes + print 'Command failed: %s' % cmd + print 'With output:' + print '--------------' + print e.output + print '--------------' + raise e def continue_maybe(prompt): result = raw_input("\n%s (y/n): " % prompt) @@ -210,9 +218,9 @@ def fix_version_from_branch(branch, versions): return filter(lambda x: x.name.startswith(branch_ver), versions)[-1] def exctract_jira_id(title): - m = re.search('^(PARQUET-[0-9]+):.*$', title) + m = re.search(r'^(PARQUET-[0-9]+)\b.*$', title, re.IGNORECASE) if m and m.groups > 0: - return m.group(1) + return m.group(1).upper() else: fail("PR title should be prefixed by a jira id \"PARQUET-XXX: ...\", found: \"%s\"" % title)