Installation et mise en place de trac
Ce howto a été écrit au départ pour debian etch puis a été adapté pour debian lenny. Il reste cependant valable la plupart du temps pour ces deux versions de debian.
Trac est un système de tracking pour le développement d'applications. Il se compose d'une interface web, d'un wiki, et permet d'intégrer facilement un dépôt SubVersion.
Ce howto va vous montrer comment mettre en place ce système de tracking.
Le domaine utilisé est trac.pfoo.csnu.org
qui est un alias pour core.csnu.org
.
core.csnu.org
est le domaine identifiant le serveur sur lequel se trouvera le trac. Il possède l'adresse ipv4 213.186.47.110
et l'adresse ipv6 2001:41d0:1:d6e::110
.
Ce howto est construit de manière à respecter mon howto sur apache 2 ainsi que celui sur svn. Les changements de permissions effectués dans ce howto supposent que vous êtes en umask 0027
Champs dns
Éditez le fichier de la zone dns de votre domaine (/srv/bind/csnu.org.hosts
dans mon cas) et ajoutez les lignes suivantes si elles ne sont pas présentent :
core.csnu.org. IN A 213.186.47.110 core.csnu.org. IN AAAA 2001:41d0:1:d6e::110 trac.pfoo IN CNAME core.csnu.org.
Bien-sur si vous ne disposez pas d'ipv6 vous n'avez pas besoin du champs AAAA
.
Installation
On va commencer par installer trac à partir des dépôts debian :
aptitude install trac
Trac nécessite un gestionnaire de base de donnée. Le support MySQL n'était encore qu'en test au moment où j'écris ces lignes, nous allons plutôt utiliser sqlite.
aptitude install sqlite
Création de l'environnement trac
Nous allons créer un environnement trac nommé "trac" dans /srv/http/csnu.org/pfoo.csnu.org/trac/
:
trac-admin /srv/http/csnu.org/pfoo.csnu.org/trac initenv
Il va falloir répondre à une série de questions:
Project Name [My Project]> myproject Database connection string [sqlite:db/trac.db]> appuyez sur enter Repository type [svn]> appuyez sur enter Path to repository [/var/svn/test]> /srv/http/csnu.org/pfoo.csnu.org/svn/ Templates directory [/usr/share/trac/templates]> appuyez sur enter
Comme vous pouvez le voir, je couple trac avec mon dépôt subversion situé dans /srv/http/csnu.org/pfoo.csnu.org/svn/
.
Pour fonctionner, il faut que l'environnement trac soit accessible en lecture et en écriture par apache. Modifiez donc les droits d'accès :
chown -R root:www-data /srv/http/csnu.org/pfoo.csnu.org/trac/ chmod -R g+w /srv/http/csnu.org/pfoo.csnu.org/trac/
Création de deux utilisateurs
Nous allons maintenant créer deux utilisateurs ayant accès à trac. On préfèrera crypter les mots-de-passes en SHA (option -s)
htpasswd -cs /srv/http/csnu.org/pfoo.csnu.org/trac.htpasswd pfoo htpasswd -s /srv/http/csnu.org/pfoo.csnu.org/trac.htpasswd jonass
Bien-sur, il faut que ce fichier soit accessible par apache :
chown root:www-data /srv/http/csnu.org/pfoo.csnu.org/trac.htpasswd
Configuration de apache2
Créez le fichier /etc/apache2/vhosts/trac.pfoo.csnu.org.conf
et ajoutez y les lignes suivantes :
<VirtualHost 213.186.47.110:80> ServerName trac.pfoo.csnu.org Include sites/trac.pfoo.csnu.org.conf </VirtualHost> <VirtualHost [2001:41d0:1:d6e::110]:80> ServerName trac.pfoo.csnu.org Include sites/trac.pfoo.csnu.org.conf </VirtualHost>
Si vous voulez une vhost sécurisée en ssl, je vous renvois à mon [howto sur apache2].
Maintenant, deux choix s'offrent à nous pour l'accès web au déport trac. On peut soit utiliser CGI
, soit utiliser mod-python
. Personnellement, je préfère mod-python
.