Fix PostUploadHook for Gerrit issues

A gerrit change must contain the "Change-Id" at the end. This CL strips
out the changeId from the description and adds it back in at the end.

BUG=skia:5676
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2299303002
NOTRY=true

Review-Url: https://codereview.chromium.org/2299303002
This commit is contained in:
rmistry 2016-09-01 13:36:31 -07:00 committed by Commit bot
parent 3ed1897437
commit 07f0446e9a

View File

@ -458,6 +458,14 @@ def PostUploadHook(cl, change, output_api):
issue = cl.issue
if issue:
original_description = cl.GetDescription()
changeIdLine = None
if cl.IsGerrit():
# Remove Change-Id from description and add it back at the end.
regex = re.compile(r'^(Change-Id: (\w+))(\n*)\Z', re.M | re.I)
changeIdLine = re.search(regex, original_description).group(0)
original_description = re.sub(regex, '', original_description)
original_description = re.sub('\n+\Z', '\n', original_description)
new_description = original_description
# Add GOLD_TRYBOT_URL if it does not exist yet.
@ -535,6 +543,9 @@ def PostUploadHook(cl, change, output_api):
# If the description has changed update it.
if new_description != original_description:
if changeIdLine:
# The Change-Id line must have two newlines before it.
new_description += '\n\n' + changeIdLine
cl.UpdateDescription(new_description)
return results