repo-review: Trim trailing slashes to avoid errors

Bug: b/170858163
Change-Id: I3de16ad77f0436af97eae26816fc99493fba30c3
This commit is contained in:
Logan Chien
2021-07-19 14:59:29 -07:00
parent 52c76356a5
commit 4ee322f25b
4 changed files with 23 additions and 9 deletions

View File

@@ -346,6 +346,11 @@ def find_gerrit_name():
raise ValueError('cannot find gerrit URL from manifest') raise ValueError('cannot find gerrit URL from manifest')
def normalize_gerrit_name(gerrit):
"""Strip the trailing slashes because Gerrit will return 404 when there are
redundant trailing slashes."""
return gerrit.rstrip('/')
def _parse_args(): def _parse_args():
"""Parse command line options.""" """Parse command line options."""
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
@@ -361,12 +366,13 @@ def _parse_args():
return parser.parse_args() return parser.parse_args()
def main(): def main():
"""Main function""" """Main function"""
args = _parse_args() args = _parse_args()
if not args.gerrit: if args.gerrit:
args.gerrit = normalize_gerrit_name(args.gerrit)
else:
try: try:
args.gerrit = find_gerrit_name() args.gerrit = find_gerrit_name()
# pylint: disable=bare-except # pylint: disable=bare-except

View File

@@ -26,7 +26,8 @@ import os
import sys import sys
from gerrit import ( from gerrit import (
create_url_opener_from_args, find_gerrit_name, query_change_lists, get_patch create_url_opener_from_args, find_gerrit_name, normalize_gerrit_name,
query_change_lists, get_patch
) )
def _parse_args(): def _parse_args():
@@ -49,7 +50,9 @@ def main():
"""Main function""" """Main function"""
args = _parse_args() args = _parse_args()
if not args.gerrit: if args.gerrit:
args.gerrit = normalize_gerrit_name(args.gerrit)
else:
try: try:
args.gerrit = find_gerrit_name() args.gerrit = find_gerrit_name()
# pylint: disable=bare-except # pylint: disable=bare-except

View File

@@ -32,7 +32,8 @@ import sys
import xml.dom.minidom import xml.dom.minidom
from gerrit import ( from gerrit import (
create_url_opener_from_args, find_gerrit_name, query_change_lists, run create_url_opener_from_args, find_gerrit_name, normalize_gerrit_name,
query_change_lists, run
) )
from subprocess import PIPE from subprocess import PIPE
@@ -414,7 +415,9 @@ def main():
"""Main function""" """Main function"""
args = _parse_args() args = _parse_args()
if not args.gerrit: if args.gerrit:
args.gerrit = normalize_gerrit_name(args.gerrit)
else:
try: try:
args.gerrit = find_gerrit_name() args.gerrit = find_gerrit_name()
# pylint: disable=bare-except # pylint: disable=bare-except

View File

@@ -32,8 +32,8 @@ except ImportError:
from gerrit import ( from gerrit import (
abandon, add_reviewers, create_url_opener_from_args, delete_reviewer, abandon, add_reviewers, create_url_opener_from_args, delete_reviewer,
delete_topic, find_gerrit_name, query_change_lists, restore, set_hashtags, delete_topic, find_gerrit_name, normalize_gerrit_name, query_change_lists,
set_review, set_topic, submit restore, set_hashtags, set_review, set_topic, submit
) )
@@ -191,7 +191,9 @@ def main():
# Parse and check the command line options # Parse and check the command line options
args = _parse_args() args = _parse_args()
if not args.gerrit: if args.gerrit:
args.gerrit = normalize_gerrit_name(args.gerrit)
else:
try: try:
args.gerrit = find_gerrit_name() args.gerrit = find_gerrit_name()
# pylint: disable=bare-except # pylint: disable=bare-except