Motivation
CVS and Bugzilla are two very useful tools, but they are very
difficult to integrate together. For instancce, when performing
a CVS commit to fix a bug that is already recorded in Bugzilla,
it would be helpful if there were a way for Bugzilla to record the
commit message and patch with the history of the bug. Out of the
box this isn't possible, but with the tools here you can configure
the two to work together.
Files
- CVSROOT/commit-email
Creates the outbound email with the commit message and patch.
- CVSROOT/loginfo
Controls which modules in the repository use commit-email to send
outbound email. Also lists the email address to which the commits
and attached diffs will be sent.
- CVSROOT/checkoutlist
Controls which files will be checked out into the CVSROOT
directory on the server. It must include commit-email so
that it will be available for loginfo to run.
- CVSROOT/rcstemplate
The template file for a commit that is presented to the user when
they do an interactive 'cvs commit'. It contains the BUG:
and SUMMARY: lines that are parsed by commit-email.
- bin/bugzilla-email
Program run by procmail when bugs@example.com receives mail
from the commit. Uses Bugzilla::OO to interface with the
database.
- Bugzilla::OO
Complete object oriented re-implementation of the interface
to the Bugzilla database. The existing one is less than
well designed and doesn't have the simple sort of accessors
that external modules need to use.
Module Documentation,
such as it is.
Setup
Init CVS repository
Setup CVS mail
Setup Bugzilla
Setup Bugzilla procmail
Test bugs