#
# Client : %(client_name)s
# Project : %(project_name)s
#
# This cleverbox configuration file enables three services for each project :
# - Subversion : a subversion repository
# - Trac : a Trac (http://trac.edgewall.org) instance, linked to the subversion repository
# - Documents : a webdav share
#
# All the services require authentication.
#
# Authentication is common to all services
# Digest authentication is still experimental in apache-2.2
AuthType Basic
# -- File based authentification
# This file can be generated and updated using apache's `htpasswd` executable
AuthUserFile %(clients_root)s/%(client_name)s/var/%(project_name)s-htusers
# -- Subversion service
DAV svn
SVNPath %(clients_root)s/%(client_name)s/var/svn/%(project_name)s
# This service requires authentication
AuthName "%(client_name)s :: %(project_name)s :: SVN"
require valid-user
# -- Trac service
SetHandler mod_python
PythonPath "['%(trac_install_dir)s'] + sys.path"
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv %(clients_root)s/%(client_name)s/var/trac/%(project_name)s
PythonOption TracUriRoot /%(client_name)s/%(project_name)s/trac
SetEnv PYTHON_EGG_CACHE %(clients_root)s/%(client_name)s/tmp
# Note : the match against "timeline" is needed to provide authenticated RSS feeds
# This service requires authentication
AuthName "%(client_name)s :: %(project_name)s :: Trac"
Require valid-user
# -- Documents service
AliasMatch /%(client_name)s/%(project_name)s/documents(.*) %(clients_root)s/%(client_name)s/htdocs/%(project_name)s$1
Dav On
# This service requires authentication
AuthName "%(client_name)s :: %(project_name)s :: Documents"
Require valid-user