Version 8 (modified by Noah Kantrowitz, 12 years ago) (diff)

Adding instructions

Expermiental Trac multi-project support


Still developing this concept.

Note: What is in subversion is currently useable (though only tested by a few people), but there isn't (yet) any documentation. If you would like to try this out you try finding me on #trac (I am usually on as coderanger).

  • TracForgePluginInstallation
  • TracForgeGuide


As a stand in for better instructions pending more completed features:

First designate one env to be the master. This will manage SSO, and  
hold the central roles and permissions. This is also commonly the  
aggregate trac if you are using the data subscription system, but it  
doesn't need to be.

On each Trac, including the master, set the master_path option (under  
[tracforge]) to the full filesystem path to the master env.

On the master env, activate these components:
tracforge.* = enabled
tracforge.linker.* = disabled
tracforge.linker.auth.tracforgecookiemunger = enabled
tracforge.subscriptions.* = disabled

On each client env activate these:
trac.web.auth.loginmodule = disabled
tracforge.admin.perm.* = enabled
tracforge.linker.auth.* = enabled

For all envs set this in [trac]:
permission_store = TracForgePermissionModule

That should be all config changes you need. If you want to use the  
data subscription system, just enable tracforge.subscriptions.* on  
all envs.

To setup the tracforge system, go into WebAdmin on the master, and  
there should be a TracForge Project Admin screen. In there add each  
of your projects. For now TracForge cannot actually create the  
projects, so make them the normal way and then just enter them into  
TracForge. Once that is done you should be able to add central roles  
and permissions. Permissions work exactly the same way as normal,  
with the central ones combined with the per-project permissions.  
Roles show up as groups, so you can do something like give the group  
"member" the permission WIKI_MODIFY, and then add some users as  
members to a project. The "*" project on the roles screen means that  
user will have the given role on all projects (very handy for  
configuring global admin accounts).

There isn't much configuration to the subscription system. It should  
autodetect all sibling envs (envs sharing the same enclosing folder),  
and let you add subscriptions from one env to another. Changesets  
work very well, and tickets are mostly working (though there is no  
support for attachments yet).

Bugs/Feature Requests

Existing bugs and feature requests for TracForgePlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from [download:tracforgeplugin here].


You can check out TracForgePlugin from here using Subversion, or browse the source with Trac.


Nothing yet.

Recent Changes

15303 by rjollos on 2016-02-15 00:07:25
Encode path_info as utf-8

Patch by jun66j5. Fixes #11388.

3650 by coderanger on 2008-05-10 09:21:50
Minor addition to reduce admin confusion.
3649 by coderanger on 2008-05-10 08:56:36
Much upgraded dispatch system.


Author: coderanger