Building a Bug Tracker: Setting up the Infrastructure
ExpressionEngine is an incredibly flexible system, capable of handling many different types of data. The reason for this is the underlying power and flexibility of the Weblog Module, its Custom Field Sets, Category Groups, and Statuses.
On our own site here at ExpressionEngine.com, we have used that flexibility to run the Bug Tracker. I often see the question, “when will you release the Bug Tracker module?” Well, the answer here is simple: there is no particular Bug Tracker module! The Bug Tracker is created out-of-the-box using the power of the Weblog Module. In this series, we’ll explore how you, too, can leverage this power to create your own Bug Tracker.
This series does assume that you have gone through the Quick Start Tutorial and have a basic understanding of how to create and assign custom field, category, and status groups.
Before we can really dig in, we first need to create the infrastructure for the Bug Tracker. Let’s do that now.
We’ll start in Admin -> Weblog Administration and set up our Bug Tracker groups. We’ll want to set up groups for each of the custom field, status, and category groups. Below is the infrastructure that will be assumed throughout the series.
These are the Custom Weblog Fields that we’ll use:
Field Name: bug_tracker_details
Field Label: Details
Formatting: XHTML
Required? Yes
Field Name: bug_tracker_version
Field Label: Version
Field Type: Drop-down list, populated manually.
Drop-down options:
> 1
> 1.5
> 2
> 2.5
Formatting: None
Field Name: bug_tracker_severity
Field Label: Severity
Field Type: Drop-down list, populated manually.
Drop-down options:
> Trivial
> Minor
> Major
> Critical
Formatting: None
Field Name: bug_tracker_assignment
Field Label: Assigned To
Field Type: Drop-down, populated manually.
Drop-down options:
> Bob
> Jane
> Andrea
> Chris
Formatting: None
These are the Custom Entry Statuses we’ll use:
New
Confirmed
Unconfirmed
External
Resolved
Now we want to set up some Custom Categories. For this let’s set up these categories, in a single Category Group:
Product A
Product B
Website
The last step in this setup process is to create a Weblog to store our bug reports. Each bug report will be an entry in this weblog. So, to complete the infrastructure, we need to create a new Weblog and assign the groups that we created and populated above. For this weblog we’ll use the shortname “bug_tracker”.
As the series goes on, we’ll build the bug tracker templates using this infrastructure, so it would be good to get this set up on your site to follow along with the rest of the series!


