in dev/merge_spark_pr.py [0:0]
def initialize_jira():
global asf_jira
asf_jira = None
jira_server = {"server": JIRA_API_BASE}
if not JIRA_IMPORTED:
print_error("ERROR finding jira library. Run 'pip3 install jira' to install.")
continue_maybe("Continue without jira?")
elif JIRA_ACCESS_TOKEN:
client = jira.client.JIRA(jira_server, token_auth=JIRA_ACCESS_TOKEN)
try:
# Eagerly check if the token is valid to align with the behavior of username/password
# authn
client.current_user()
asf_jira = client
except Exception as e:
if e.__class__.__name__ == "JIRAError" and getattr(e, "status_code", None) == 401:
msg = (
"ASF JIRA could not authenticate with the invalid or expired token '%s'"
% JIRA_ACCESS_TOKEN
)
fail(msg)
else:
raise e
elif JIRA_USERNAME and JIRA_PASSWORD:
print("You can use JIRA_ACCESS_TOKEN instead of JIRA_USERNAME/JIRA_PASSWORD.")
print("Visit https://issues.apache.org/jira/secure/ViewProfile.jspa ")
print("and click 'Personal Access Tokens' menu to manage your own tokens.")
asf_jira = jira.client.JIRA(jira_server, basic_auth=(JIRA_USERNAME, JIRA_PASSWORD))
else:
print("Neither JIRA_ACCESS_TOKEN nor JIRA_USERNAME/JIRA_PASSWORD are set.")
continue_maybe("Continue without jira?")