backport-resolve-issue: extract PR number more carefully

This addresses cases where the previous regex '\\d++' was promiscuously
matching strings of digits that were not GitHub PR IDs.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
This commit is contained in:
Nathan Cutler 2020-02-10 11:46:50 +01:00
parent 5959ac25c7
commit 9ea48e8f7e

View File

@ -510,12 +510,13 @@ Ceph version: base {}, target {}'''.format(self.github_url, pr_title_trunc,
def populate_github_url(self):
global github_endpoint
# GitHub PR ID from merge commit string
p = re.compile('\\d+')
p = re.compile('(pull request|PR) #(\\d+)')
try:
self.github_pr_id = p.search(self.merge_commit_description).group()
self.github_pr_id = p.search(self.merge_commit_description).group(2)
except AttributeError:
assert False, \
"Failed to extract GitHub PR ID from merge commit string ->{}<-".format(self.merge_commit_string)
logging.debug("Merge commit string: {}".format(self.merge_commit_string))
logging.debug("GitHub PR ID from merge commit string: {}".format(self.github_pr_id))
self.github_url = "{}/pull/{}".format(github_endpoint, self.github_pr_id)