Bug-tracking Backends

Bugzilla

Bugzilla is an enterprise-class piece of software that tracks millions of bugs and issues for hundreds of organizations around the world.

Bugzilla does not provide a public interface for SCM integration. Nevertheless, the Scmbug daemon attempts to reuse functionality already available in the Perl-based Bugzilla libraries. As a result, the source code used to host a Bugzilla instance must be locally accessible by the daemon. The installation_directory variable is used to define the location of the Bugzilla source installation as shown in Figure 1.

# Used for Bugzilla and RequestTracker.
#
# Path to the directory of the bugtracker sources providing an
# API that the daemon can use
installation_directory => '/usr/share/bugzilla/lib'
	    

Figure 1. Bug-tracker installation directory for Bugzilla.

Additionally, the installed_locally variable is used to flag whether Bugzilla is installed locally on the same machine the daemon is running as shown in Figure 2. This is required to flush Bugzilla's version cache when SCM tags are added or deleted, and immediately reflect tag manipulation to Bugzilla's user interface.

# Used only for Bugzilla.
#
# Flags whether the live bugtracker instance is installed
# locally on the same machine the daemon is running
installed_locally => 1,
	    

Figure 2. Bug-tracker installed locally variable.

Note

For example, it is possible to install Bugzilla in machine A, and install a duplicate Bugzilla source in machine B where Scmbug is installed. In this scenario installation_directory would be set to Bugzilla's source code path on machine B, but the variable installed_locally would be set to 0.

The Bugzilla developers are planning to provide a formal SCM integration interface in future releases.

As of version 2.22.0, Bugzilla does not yet support a mapping of the SCM username to a Bugzilla username. An SCM to bug-tracking username mapping is accomodated by the integration daemon using the userlist variable, as described in the Section called Valid SCM to bug-tracking username mapping in the chapter called Features.

Bugzilla currently lacks a per-bug comment id. This makes it very difficult to accurately report the comment ids in a VDD for Bugzilla. Currently, the VDD comment ids are prefixed with the string "inaccurate_".

Scmbug has been verified to work against the following releases of Bugzilla: