Exit with an error rather than a traceback when encountering a private email address.

This commit is contained in:
Luke Faraone 2010-05-29 22:54:26 -04:00
parent 90110bfeac
commit 6907a384fe

View File

@ -30,6 +30,7 @@ from ubuntutools.lp.libsupport import get_launchpad
COMMAND_LINE_SYNTAX_ERROR = 1
VERSION_DETECTION_FAILED = 2
PRIVATE_USER_EMAIL = 3
def get_version(title):
m = re.search("[() ][0-9][0-9a-zA-Z.:+-~]*", title)
@ -125,7 +126,12 @@ def main(bug_numbers, package, version, section, update, uploader, key, verbose=
for bug_number in bug_numbers:
bug = launchpad.bugs[bug_number]
if uploader is None:
uploader = bug.owner.display_name + " <" + bug.owner.preferred_email_address.email + ">"
try:
uploader = bug.owner.display_name + " <" + bug.owner.preferred_email_address.email + ">"
except ValueError:
if not silent:
print >> sys.stderr, "E: Bug owner does not have a public email address. Specify uploader with '-e'."
sys.exit(PRIVATE_USER_EMAIL)
task = list(bug.bug_tasks)[0]