Trac
From Triangle Wiki
Contents |
Introduction
Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management. Our mission; to help developers write great software while staying out of the way. Trac should impose as little as possible on a team's established development process and policies.
It provides an interface to Subversion, an integrated Wiki and convenient report facilities.
Trac allows wiki markup in issue descriptions and commit messages, creating links and seamless references between bugs, tasks, change sets, files and wiki pages. A time line shows all project events in order, making getting an overview of the project and tracking progress very easy.
Installation
For docs on installing the Trac application please check out the following:
Below is a bash script for creating SVN repositories and Trac environments very quickly. Use at your own risk, it contains elements that are specific to my environment.
clear echo "Create and Configure SVN" setup_name=PROJECT rm -rf /opt/trac/$setup_name rm -rf /opt/svn/$setup_name rm -rf /opt/svn/template mkdir /opt/svn/template mkdir /opt/svn/template/$setup_name mkdir /opt/svn/template/$setup_name/trunk mkdir /opt/svn/template/$setup_name/tags mkdir /opt/svn/template/$setup_name/branches mkdir /opt/svn/$setup_name svnadmin create --fs-type fsfs /opt/svn/$setup_name rm -rf /opt/svn/template cp /opt/svn/ALREADY_SETUP/conf/svnserve.conf /opt/svn/$setup_name/conf/svnserve.conf echo "Create and Configure Trac" trac-admin /opt/trac/$setup_name initenv chown -R wwwrun /opt/trac/$setup_name/db trac-admin /opt/trac/$setup_name permission remove anonymous '*' trac-admin /opt/trac/$setup_name permission remove ADMIN_USER '*' trac-admin /opt/trac/$setup_name permission remove authenticated '*' trac-admin /opt/trac/$setup_name permission add ADMIN_USER TRAC_ADMIN trac-admin /opt/trac/$setup_name permission add anonymous WIKI_VIEW trac-admin /opt/trac/$setup_name permission add authenticated ROADMAP_VIEW WIKI_MODIFY trac-admin /opt/trac/$setup_name permission add authenticated TICKET_VIEW TICKET_CREATE trac-admin /opt/trac/$setup_name permission add authenticated REPORT_VIEW MILESTONE_VIEW
Trac Admin
- Usage: trac-admin /path/to/projenv [command [subcommand] [option ...]]
- Invoking trac-admin /path/to/projenv without any command starts the interactive mode.
- trac-admin about -- Shows information about trac-admin
- trac-admin help -- Show documentation
- trac-admin initenv -- Create and initialize a new environment interactively
- trac-admin /opt/trac/PATH initenv
Trac Authentication
Firstly we need to add users to the HTTP access, as this is handled through Apache the new user for the project needs to be added to the Auth File. Utilising HTPasswd to create the file and subsequent user accounts.
For first user the -c switch creates the file subsequent users do not need this
- htpasswd -cs /path/to/project/.auth-file username
Trac Permissions
On set up I instantly remove all anonymous access with trac-admin /opt/trac/PATH permission remove anonymous '*' this takes away all permissions for anonymous users.
- permission list [user] -- List permission rules
- permission add <user> <action> [action] [...] -- Add a new permission rule
- permission remove <user> <action> [action] [...] -- Remove permission rule
- permission add username TRAC_ADMIN

