ARROW-7674: [Dev] Add helpful message for captcha challenge in merge_arrow_pr.py
Closes #6277 from TheNeuralBit/merge-captcha and squashes the following commits:
1134791de <François Saint-Jacques> Fix python linter
1c844e45a <Brian Hulette> Add helpful message for captcha challenge
Lead-authored-by: Brian Hulette <hulettbh@gmail.com>
Co-authored-by: François Saint-Jacques <fsaintjacques@gmail.com>
Signed-off-by: François Saint-Jacques <fsaintjacques@gmail.com>
diff --git a/dev/merge_arrow_pr.py b/dev/merge_arrow_pr.py
index 7373f3a..ecbda09 100755
--- a/dev/merge_arrow_pr.py
+++ b/dev/merge_arrow_pr.py
@@ -47,6 +47,7 @@
try:
import jira.client
+ import jira.exceptions
except ImportError:
print("Could not find jira library. "
"Run 'sudo pip install jira' to install.")
@@ -516,8 +517,20 @@
def connect_jira(cmd):
- return jira.client.JIRA({'server': JIRA_API_BASE},
- basic_auth=get_credentials(cmd))
+ try:
+ return jira.client.JIRA({'server': JIRA_API_BASE},
+ basic_auth=get_credentials(cmd))
+ except jira.exceptions.JIRAError as e:
+ if "CAPTCHA_CHALLENGE" in e.text:
+ print("")
+ print("It looks like you need to answer a captcha challenge for "
+ "this account (probably due to a login attempt with an "
+ "incorrect password). Please log in at "
+ "https://issues.apache.org/jira and complete the captcha "
+ "before running this tool again.")
+ print("Exiting.")
+ sys.exit(1)
+ raise e
def get_pr_num():