Add the BugTracker framework and Bugzilla/JIRA bug infoboxes.
Review Request #6047 — Created July 2, 2014 and submitted — Latest diff uploaded
This change adds a new interface to the hosting service app for deeper
integration with bug trackers. At the moment, this interface defines three
methods to fetch information about a given bug, which are used to provide a
hover infobox that shows the summary, description, and status.This interface is currently implemented by the existing Bugzilla backend, and
by a new JIRA backend.The next steps for this is to implement the interface for more bug-tracker
backends, and to start adding capabilities such that Review Board can do things
like add a comment to a bug when a review request linking to it is published.This change is based on these changes by Tomi Äijö: * https://reviews.reviewboard.org/r/5531/ * https://reviews.reviewboard.org/r/5769/ * https://reviews.reviewboard.org/r/5745/
I've made several changes to Tomi's original implementation. The bug infobox
formatting has been cleaned up a bit, especially with regards to the formatting
of the description text. The caching steps are now done in a helper inside the
BugTracker class so we don't have to re-implement it everywhere. I've also made
it so that failures to fetch the bug result in no infobox, rather than an
infobox which just has the ID and nothing else.
- Tested the bug infobox with a bug tracker configured to point to
https://bugzilla.mozilla.org, and https://jira.atlassian.com. Saw that bug
information was fetched correctly and that the infobox looked good. - Tested invalid bug numbers and saw that the infobox request returned 404 and
no infobox was displayed. - Tested that links to existing bug trackers (Google Code, etc) worked well.
- Tested that newly-added bugs linked correctly.
- Ran unit tests.