diff --git a/debian/changelog b/debian/changelog index 6fcdc87..94a6bed 100644 --- a/debian/changelog +++ b/debian/changelog @@ -29,6 +29,8 @@ ubuntu-dev-tools (0.109) UNRELEASED; urgency=low * pull-debian-debdiff: Rewrite in Python, and use snapshot.debian.org. * pull-lp-source: Support -d (LP: #681699) * suspicious-source: Whitelist Python source code. + * import-bug-from-debian: Add --package option, for importing bugs from + psuedo-packages. [ Michael Bienia ] * ubuntutools/lp/lpapicache.py: Allow easier selection of 'staging' as LP @@ -52,7 +54,7 @@ ubuntu-dev-tools (0.109) UNRELEASED; urgency=low * add "add-patch" that provides the non-interactive version of edit-patch - -- Benjamin Drung Mon, 27 Dec 2010 22:38:34 +0100 + -- Stefano Rivera Tue, 04 Jan 2011 22:23:20 +0200 ubuntu-dev-tools (0.108) experimental; urgency=low diff --git a/doc/import-bug-from-debian.1 b/doc/import-bug-from-debian.1 index aede43a..5276d1f 100644 --- a/doc/import-bug-from-debian.1 +++ b/doc/import-bug-from-debian.1 @@ -4,7 +4,7 @@ import\-bug\-from\-debian \- Import bugs from Debian's BTS, and file them against Ubuntu in LP. .SH SYNOPSIS -.B import\-bug\-from\-debian \fR[\fB\-nb\fR] \fIbug\fR... +.B import\-bug\-from\-debian \fR[\fIoptions\fR] \fIbug\fR... .br .B import\-bug\-from\-debian \-h @@ -28,6 +28,11 @@ Display a help message and exit. Use the specified instance of Launchpad (e.g. "staging"), instead of the default of "production". .TP +.B \-p \fIPACKAGE\fR, \fB\-\-package\fR=\fIPACKAGE\fR +Launchpad package to file bug against, if not the same source package +name as Debian. +Useful for importing removal bugs filed against \fBftp.debian.org\fR. +.TP .B \-\-no\-conf Do not read any configuration files, or configuration from environment variables. diff --git a/import-bug-from-debian b/import-bug-from-debian index fa1e250..a5b4e06 100755 --- a/import-bug-from-debian +++ b/import-bug-from-debian @@ -54,6 +54,10 @@ def main(): parser.add_option("-n", "--dry-run", help=SUPPRESS_HELP, dest="lpinstance", action="store_const", const="staging") + parser.add_option("-p", "--package", metavar="PACKAGE", + help="Launchpad package to file bug against " + "(default: Same as Debian)", + dest="package", default=None) parser.add_option("--no-conf", dest="no_conf", default=False, help="Don't read config files or environment variables.", action="store_true") @@ -96,15 +100,21 @@ def main(): for bug in bugs: bug = bug.value package = bug.package + ubupackage = package + if options.package: + ubupackage = options.package bug_num = bug.bug_num subject = bug.subject log = debbugs.get_bug_log(bug_num) summary = log[0][0] - target = ubuntu.getSourcePackage(name=package) + target = ubuntu.getSourcePackage(name=ubupackage) u_bug = launchpad.bugs.createBug(target=target, title=subject, description="Imported from Debian bug %d:\n\n%s" % (bug_num, summary)) - d_task = u_bug.addTask(target=debian.getSourcePackage(name=package)) + d_sp = debian.getSourcePackage(name=package) + if d_sp is None and options.package: + d_sp = debian.getSourcePackage(name=options.package) + d_task = u_bug.addTask(target=d_sp) d_watch = u_bug.addWatch(remote_bug=bug_num, bug_tracker=lp_debbugs) d_task.bug_watch = d_watch d_task.lp_save()