= Managing Multiple Trac Versions = If you use Trac for long enough you will probably need multiple sites. If you use those long enough you will want to upgrade. If you must upgrade, you may have need of multiple versions before, during and after the upgrade process. == Preparation == After we fell in love with 0.8, we had a hard time upgrading to 0.9. When we installed our new Trac server, we moved to 0.10, but this time we were prepared. '''Dependancies'''[[br]] We manage the external dependancies with Portage (Gentoo's Package Manager). We install Trac, however, by hand. See: TracInstall#Requirements for a complete listing. '''Local Install'''[[br]] We installed trac in /var/trac-`[version]`. == Installing == Download the tarball, uncompress it, and install. (Repeat for each version) ([attachment:trac-install handy script]) {{{ ungoliant jms # wget http://ftp.edgewall.com/pub/trac/trac-0.10.2.tar.gz ungoliant jms # tar zxf trac-0.10.2.tar.gz ungoliant jms # cd trac-0.10.2 ungoliant trac-0.10.2 # python setup.py install --prefix=/var/trac-0.10.2 running install .... copying wiki-macros/TracGuideToc.py -> /var/trac-0.10.2/share/trac/wiki-macros Thank you for choosing Trac 0.10.2. Enjoy your stay! ungoliant trac-0.10.2 # }}} In order to use your new trac installs, you need to override your `PYTHONPATH`. {{{ #!sh PYTHONPATH="/var/trac-${VERSION}/lib/python2.4/site-packages" }}} Grab the [attachment:multitrac] script. You can link to it to automatically parse the version out of the command name, and set the PYTHONPATH. {{{ cd /usr/bin ln -s multitrac tracd-0.10.2 ln -s multitrac trac-admin-0.10.2 }}} '''Example''' {{{ ungoliant bin # trac-admin-0.10.2 --version Trac Admin Console 0.10.2 ================================================================= ..... }}} == Supporting Scripts == * [attachment:multitrac] - This allows easy use of the various versions of trac. * [attachment:trac-install] - This allows easy installation of a new version.