mirror of https://github.com/apache/kafka.git
KAFKA-2344; kafka-merge-pr improvements
The first 4 commits are adapted from changes that have been done to the Spark version and the last one is the feature that gwenshap asked for. Author: Ismael Juma <ismael@juma.me.uk> Reviewers: Gwen Shapira <cshapi@gmail.com> Closes #90 from ijuma/kafka-2344-merge-pr-improvements and squashes the following commits:900c371
[Ismael Juma] Allow reviewers to be entered during mergeac06347
[Ismael Juma] Allow primary author to be overridden during mergeb309829
[Ismael Juma] Set JIRA resolution to "Fixed" instead of relying on default transition0c69a64
[Ismael Juma] Check return value of doctest.testmod()061cdce
[Ismael Juma] Fix instructions on how to install the `jira-python` library
This commit is contained in:
parent
fd3b4cc41e
commit
18adec7ed5
|
@ -130,7 +130,15 @@ def merge_pr(pr_num, target_ref, title, body, pr_repo_desc):
|
|||
'--pretty=format:%an <%ae>']).split("\n")
|
||||
distinct_authors = sorted(set(commit_authors),
|
||||
key=lambda x: commit_authors.count(x), reverse=True)
|
||||
primary_author = distinct_authors[0]
|
||||
primary_author = raw_input(
|
||||
"Enter primary author in the format of \"name <email>\" [%s]: " %
|
||||
distinct_authors[0])
|
||||
if primary_author == "":
|
||||
primary_author = distinct_authors[0]
|
||||
|
||||
reviewers = raw_input(
|
||||
"Enter reviewers in the format of \"name1 <email1>, name2 <email2>\": ").strip()
|
||||
|
||||
commits = run_cmd(['git', 'log', 'HEAD..%s' % pr_branch_name,
|
||||
'--pretty=format:%h [%an] %s']).split("\n\n")
|
||||
|
||||
|
@ -146,6 +154,9 @@ def merge_pr(pr_num, target_ref, title, body, pr_repo_desc):
|
|||
|
||||
merge_message_flags += ["-m", authors]
|
||||
|
||||
if (reviewers != ""):
|
||||
merge_message_flags += ["-m", "Reviewers: %s" % reviewers]
|
||||
|
||||
if had_conflicts:
|
||||
committer_name = run_cmd("git config --get user.name").strip()
|
||||
committer_email = run_cmd("git config --get user.email").strip()
|
||||
|
@ -278,7 +289,10 @@ def resolve_jira_issue(merge_branches, comment, default_jira_id=""):
|
|||
jira_fix_versions = map(lambda v: get_version_json(v), fix_versions)
|
||||
|
||||
resolve = filter(lambda a: a['name'] == "Resolve Issue", asf_jira.transitions(jira_id))[0]
|
||||
asf_jira.transition_issue(jira_id, resolve["id"], fixVersions=jira_fix_versions, comment=comment)
|
||||
resolution = filter(lambda r: r.raw['name'] == "Fixed", asf_jira.resolutions())[0]
|
||||
asf_jira.transition_issue(
|
||||
jira_id, resolve["id"], fixVersions = jira_fix_versions,
|
||||
comment = comment, resolution = {'id': resolution.raw['id']})
|
||||
|
||||
print "Successfully resolved %s with fixVersions=%s!" % (jira_id, fix_versions)
|
||||
|
||||
|
@ -435,11 +449,13 @@ def main():
|
|||
print "JIRA_USERNAME and JIRA_PASSWORD not set"
|
||||
print "Exiting without trying to close the associated JIRA."
|
||||
else:
|
||||
print "Could not find jira-python library. Run 'sudo pip install jira-python' to install."
|
||||
print "Could not find jira-python library. Run 'sudo pip install jira' to install."
|
||||
print "Exiting without trying to close the associated JIRA."
|
||||
|
||||
if __name__ == "__main__":
|
||||
import doctest
|
||||
doctest.testmod()
|
||||
(failure_count, test_count) = doctest.testmod()
|
||||
if (failure_count):
|
||||
exit(-1)
|
||||
|
||||
main()
|
||||
|
|
Loading…
Reference in New Issue