This document introduces bts-link, a tool that links bugs reported in Debian to bugs reported in upstream projects. Bts-link runs periodically and sends commands to Debian's bug tracker to tag bugs based on status changes in upstream trackers like Bugzilla and Launchpad. It notifies maintainers and subscribers of changes but does not automatically update bug statuses in Debian. The presentation provides background on bts-link and is given in the context of the HELIOS research project.
2. Reference sheet
(http://bts-link.alioth.debian.org/)
btslink
Written initially by Pierre Habouzit for the Debian
project
Running twice a week (more or less)
Working stand-alone but with a copy of Debian
bugtracker's database
Send commands to Debian's bugtracker (debbugs)
Commands results are notified to Debian
maintainers and package susbcribers
Licence : BSD
Language : Python
Repository : git @ git.debian.org
page 2 Olivier Berger
3. Rationale
Watch links between bugs reported in Debian and bugs
reported in “upstream” projects
Links between bugs were already created manually and
stored in debbugs (tags forwardedto)
Supported remote bugtrackers :
• bugzilla (and issuezilla);
• gnats;
• launchpad;
• mantis;
• savane;
• sourceforge trackers;
• trac;
• gforge.
Olivier Berger
5. Bugs lifecycle
Closed
tag + fixedupstream
LOCAL:Found LOCAL:Found
FORWARDED:OPEN FORWARDED:CLOSED
tags : fixed-upstream
Reopened
tag fixedupstream
Bugstatus “categories” supported in remote
bugtrackers :
• OPEN (any non-closed states, actually)
• CLOSED : then, maybe analyse the “resolution”
- If WONTFIX : add also a tag + wontfix
- If DUPLICATE : fetch duplicate bug and iterate status comparison
(at least for bugzilla for the moment)
Olivier Berger
6. Commands (email) sent to debbugs
From: btslinkupstream@lists.alioth.debian.org
control@bugs.debian.org
To:
Cc: linux2.6@packages.debian.org
Subject: [btslink] source package linux2.6
# btslink upstream status pull for source package linux2.6
user btslinkupstream@lists.alioth.debian.org
# remote status report for #497931
# * http://bugzilla.kernel.org/show_bug.cgi?id=10487
# * remote status changed: NEW > RESOLVED
# * remote resolution changed: (?) > CODEFIX
# * closed upstream
tags 497931 + fixedupstream
usertags 497931 statusNEW
usertags 497931 + statusRESOLVED resolutionCODEFIX
thanks
Olivier Berger
7. Debbugs response (email) : notification
From: Debian Bug Tracking System <owner@bugs.debian.org>
To: btslinkdevel@lists.alioth.debian.org
Cc: Debian Kernel Team <debiankernel@lists.debian.org>
Subject: Processed: [btslink] source package linux2.6
Processing commands for control@bugs.debian.org:
...
> # remote status report for #497931
> # * http://bugzilla.kernel.org/show_bug.cgi?id=10487
> # * remote status changed: NEW > RESOLVED
...
> tags 497931 + fixedupstream
Bug#497931: forcedeth: don't work after resume
There were no tags set.
Tags added: fixedupstream
Olivier Berger
8. Summary
No discovery of bugs linked together (need already set
URL as forwarded-to bug attribute)
No automatic bug status change in debbugs
Only tags bugs
Send notitifications to maintainers and people
subscribed to the package
Up to the maintainer to close bugs accordingly, apply
fixes, etc.
Contribution from Helios through patches sent (public
git tree)... many thanks to Sandro Tosi ;-)
May be extended/inspiring to address Debian + others
Olivier Berger
9. Annex : Context of this presentation
HELIOS project (http://helios-platform.org/)
• Project French R&D cluster System@tic of Paris-Region area
(FLOSS special interest group)
• 2 years project (start date : 2008/09/01)
• Academia + Industry :
- Alcatel-Lucent (industry)
- Artenum (industry, SME)
- Institut TELECOM / TELECOM & Management SudParis (academia)
- Kalis (industry, SME)
- Mandriva (industry, SME)
- Thales (project leader – industry)
• Application Lifecycle Management with Open Source
tools
page 9 Olivier Berger