Hi all I'm becoming more and more uncomfortable with the way the RT install I'm running is a mixture of config files and configuration in the database.
I can't easily version what's in the database in a way that permits sane and simple change tracking and rollback without affecting the ticket data too. Sure, I can attach database level auditing to scrips, etc, but it's a rather crude way to manage things - especially as RT doesn't draw a strong distinction between configuration and operational data. I'm wondering how other RT users handle things like reproducing an RT install from scratch on an empty DB for testing extensions, reproducing bugs on a different version, etc. Do you just do it on an ad-hoc basis as-required? Write custom scripts in the form used by /opt/rt4/etc/upgrade/x/content to feed into RT's upgrade tool? Write your own scrips that use the RT APIs to set things up? Load a dump of your live DB and update it each time? I'm leaning toward taking the upgrade script approach. That way I can test each version of our tracker on a staging copy of the production instance then reproducibly apply the changes to the production machine(s). Anybody else done this? If so, any comments on your experience doing so? -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services