This document introduces the MCSH t4 tool script, which manages deployments of the open source Trac Project Management System.
The t4 script manages several different kinds of Trac entities:
- Installations: Each installation contains a single Python virtual environment that will be used by all of the project sites.
 - Project Groups: Each installation may contain any number of project group directories for organizing the projects.
 - Project Sites: Each project group may contain any number of Trac project sites. These are created and managed with trac-admin.
 - Repositories: Each project may contain any number of repositories. Presently, only git repositories are supported by t4; however, git can act as a gateway to other version control systems.
 
This guide walks through the process of using t4 to create all of these different entities, demonstrating how they can be used to deploy a new Trac installation or integrate many existing sites.
In MCSH, a Trac installation provides a container for sharing resources among a number of projects:
- Python virtual environment
 - Inherited trac.conf settings
 - Shared Trac resource directories
 
The net/tool/trac library configuration settings determine the setting for your t4-managed Trac installation.
TODO
TODO
TODO
TODO