BMO/Hacking
Overview
BMO is running a customised version of Bugzilla, currently (3rd July 2014) sitting on top of Bugzilla version 4.2, but with many features and fixes backported from the master, 5.0, and 4.4 branches.
All source is maintained in git and is mirrored (read-only) to GitHub. New development is done in the master branch, which is regularly synced to our staging server, https://bugzilla.allizom.org, and, generally on a weekly basis, pushed out to production. The development branch is synced to our development server, https://bugzilla-dev.allizom.org, generally when we are experimenting with new features.
We use Apache's web server, and MySQL's database.
Setting up a development environment
You can setup your environment using a Vagrant VM which is described in this README or setup Bugzilla manually using the instructions below.
- Follow the instructions to install Bugzilla 4.2: http://www.bugzilla.org/docs/4.2/en/html/installing-bugzilla.html
- For section 2.1.4, check the source out of https://git.mozilla.org/webtools/bmo/bugzilla instead of the upstream repository
- Setting up an environment is basically a matter of:
- Check out the source
- Configure Apache HTTPd (I suggest you use mod_cgi not mod_perl)
- Create an empty database in MySQL, and create a MySQL account with appropriate grants
- Run checksetup.pl and follow the instructions
- Run docker/generate_bmo_data.pl