repo-review: Add abandon command line option

This commit adds `--abandon` comand line option to abandon several
change lists.

Test: repo-review.py -g [url] [query] --abandon '[reason]'
Change-Id: I5360e95a284a2d3e77a66d52ea01cec7872b9334
This commit is contained in:
Logan Chien
2018-07-03 10:27:55 +08:00
parent 321b110998
commit b260a60264
2 changed files with 75 additions and 27 deletions

View File

@@ -165,6 +165,30 @@ def set_review(url_opener, gerrit_url, change_id, labels, message):
response_file.close()
def abandon(url_opener, gerrit_url, change_id, message):
"""Abandon a change list."""
url = '{}/a/changes/{}/abandon'.format(gerrit_url, change_id)
data = {}
if message:
data['message'] = message
data = json.dumps(data).encode('utf-8')
headers = {
'Content-Type': 'application/json; charset=UTF-8',
}
request = Request(url, data, headers)
response_file = url_opener.open(request)
try:
res_code = response_file.getcode()
res_json = _decode_xssi_json(response_file.read())
return (res_code, res_json)
finally:
response_file.close()
def get_patch(url_opener, gerrit_url, change_id, revision_id='current'):
"""Download the patch file."""