Skip site navigation (1) Skip section navigation (2)

Site Navigation

FreeBSD GNATS Upgrade

Project Goal

The aim of this project is to get the FreeBSD bug tracking system upgraded from GNATS3 to GNATS4 with the minimum outage, disruption and breakage.

This turns out to be reasonably easy, as long as the interdependencies on the FreeBSD project's machines are understood. The main aim of this page is to provide a place for documentation of these dependencies, along with the steps required for a successful upgrade and the order in which they should be taken. A secondary aim is to assure interested parties that work on this is ongoing, but is non-trivial.

Project Plan

Initially, development is being done on the bugmeister's local machine, but pertinent patches will be made available at as they are deemed ready.

How to Contribute

The vast majority of the work involved will require direct access to the FreeBSD cluster of machines, with elevated privileges. However, there are some patches that need to be written, so check the table below to see what still needs to be done. If you have specific queries or patches to contribute, then please contact with details of how you can help.

If you notice that a task is missing from the list, then please do get in touch with the Bugmeister and let me know!

Resources and Links Status Board

These tasks need to be completed before the upgrade can be started.

Task Responsible Last Updated Status Notes
Patch the databases/gnats4 port for WANT_FREEFALL_CFG. Ceri Davies 14 January 2004 Done Patches
Commit the database/gnats4 patches. Oliver Eikemeier 29 January 2004 Done At least one month for shakeout will be given.
Produce patches for www/en/cgi/query-pr.cgi and www/en/cgi/query-pr-summary.cgi to work with GNATS 4. Ceri Davies 16 February 2004 In progress  
Produce configuration files for the new database. Ceri Davies 14 January 2004 Done  
Set a date! Ceri Davies   Blocked Blocked on the CGI patches
Create /c/gnats/README.GNATS4 on freefall Ceri Davies   Blocked This is intended to notify users who cvsup the gnats database that an upgrade is forthcoming. Should be created one month before the upgrade happens. Blocked on setting of the date.
Arrange resource from admins@, or root access to freefall, www and hub. Ceri Davies   Not Started  

These tasks list the steps that must be taken during the upgrade itself.

Task Machines Notes
Pre-build databases/gnats4. freefall, hub and www. freefall must have WANT_FREEFALL_CFG defined in /etc/make.conf.
Stop mail coming into the gnats account. hub It's desirable to have incoming mail written to a temporary file while the upgrade is in progress so that submissions can be re-queued once it's complete.
Comment out all the jobs in the gnats crontab. freefall  
Chmod 000 /c/gnats/gnats-adm/locks to stop further edits. freefall  
Make a backup of /c/gnats. freefall  
Commit the cgi patches. N/A  
pkg_delete the gnats3 port freefall  
Install the gnats4 port, install the new config freefall  
Submit test PRs with queue-pr. Make test edits, etc. freefall  
pkg_delete the gnats3 port hub  
Install the gnats4 port hub  
Queue a test PR on hub, and force file it on freefall hub, freefall  
pkg_delete the gnats3 port www  
Install the gnats4 port www  
Re-enable email submission hub  
Re-enable cronjobs freefall  
Re-queue backed up submissions freefall  

Not Started Not yet started
Blocked Blocked awaiting completion of another task
In progress Work in progress
Done Task completed
Not Planned Not planned

The original layout for this web page was borrowed from the FreeBSD C99 Project.