Message de bienvenue
Sur ce site : Joomla, CodeIgniter, jQuery, Projets, etc

Ersezer.com

Une fibroïne peut-etre?

Recherche

Publicité

GoogleLatitude

Home WebDev Plesk + SVN + Trac
Plesk + SVN + Trac PDF Imprimer E-mail
Blog - WebDev
Lundi, 08 Décembre 2008 20:49
J'ai passé un petit moment à installer sur mon serveur dédié un serveur SVN et une interface TRAC pour la gestion de mes projets. Mon installation est fait dans des sous-domaines de mon projet comme suit : svn.myproject.com et trac.myproject.com.

Présentation des outils : 

Plesk : (Définition du Wikipédia) Plesk est une interface de gestion de serveur payant, édité par Parallels (anciennement SWSoft). Son code source est encrypté de manière à ce qu'il ne soit pas utilisable, sauf en exécution au sein d'un environnement Plesk.
Sa facilité de prise en main et sa capacité à faire en sorte qu'un utilisateur lambda puisse gérer le serveur en font un outil réputé dans le domaine de l'administration de serveurs dédié

Subversion (en abrégé svn) est un système de gestion de versions, distribué sous licence Apache et BSD. Il a été conçu pour remplacer CVS. Ses auteurs s'appuient volontairement sur les mêmes concepts (notamment sur le principe du dépôt centralisé et unique) et considèrent que le modèle de CVS est le bon, et que seule son implémentation est en cause. Le projet a été lancé en février 2000 par CollabNet, avec l'embauche par Jim Blandy de Karl Fogel, qui travaillait déjà sur un nouveau gestionnaire de version.

Trac est un système Open Source de gestion complète de projet par Internet, développé en Python.

Trac inclut :
    * Un Wiki,
    * Gestion de feuilles de route,
    * Historique,
    * Rapport de bugs,
    * Explorateur subversion.

Note : Le serveur tourne sous Fedora Core 4.

Installation de SVN :

SVN fonctionnera avec webdav comme protocole d'accès de puis l'extérieur.

Vous devez pour ceci etre root en SSH sur votre machine.
  • # yum install subversion : Permet d'installer le logiciel subversion sur votre machine.
  • # yum install mod_dav_svn : Permet d'installer le module Webdav à apache 2.
  • # svn --version : Permet de verifier la version du SVN que vous avez et la presence du module webdav.
  • # mkdir /var/www/vhosts/myproject.com/subdomains/svn/httpdocs/repo : On crée le repertoire dans notre sous domaine pour la repository.
  • # svnaddmin create /var/www/vhosts/myproject.com/subdomains/svn/httpdocs/repo : Creation d'une repositery vide dans notre répertoire.
  • # chmod -R 777 /var/www/vhosts/myproject.com/subdomains/svn/httpdocs/repo : Donner accès a votre repository pour Apache et SVN. Ceci est a revoir dans le cas d'un serveur multi-utilisateurs (clients etc).

Installation de TRAC :

Vous devez pour ceci etre root en SSH sur votre machine.

  • # yum install trac : Permet d'installer le logiciel TRAC sur votre machine.
  • # mkdir /var/www/vhosts/myproject.com/subdomains/trac/httpdocs/tracrepo : On crée le répertoire dans notre sous domaine pour l'environnement TRAC.
  • # trac-admin /var/www/vhosts/myproject.com/subdomains/trac/httpdocs/tracrepo initenv : Génère l'environnement de TRAC dans notre répertoire.
  • # cd /var/www/vhosts/myproject.com/subdomains/trac/httpdocs On se deplace dans le repertoire du sous-domaine.
  • # chgrp -R psacln * : On change le groupe de permissions de tracrepo et sous répertoire en psacln qui est l'utilisateur Apache de Plesk.
  • # chown -R myprojectuser * : On change le propriétaire de tracrepo et sous répertoire avec l'utilisateur FTP du domaine.

Authentification :

La protection de l'SVN et du TRAC se fera à l'aide d'un login Apache. Pour ceci nous allons crée un fichier de mot de passe :
  • # htpasswd -c /etc/auth-file utilisateur : Crée un fichier d'authentification pour Apache dans le répertoire /etc/. Pour ajouter d'autre utilisateurs il faut refaire la même commande sans le "-c".

Configuration d'apache
:

Nous devons maintenant configurer apache pour que ces 2 sous-domaines fonctionnent avec SVN et TRAC. Plesk gerant lui meme le fichier de configuration d'apache nous ne pouvons pas etider celui-ci car il sera ecrasé automatiquement par plesk. Pour ceci nous devons créer un fichier de configuration dans /var/www/vhosts/myproject.com/subdomains/trac/conf/ et /var/www/vhosts/myproject.com/subdomains/svn/conf/ pour que Apache prenne en compte nos modifications :

Le fichier /var/www/vhosts/myproject.com/subdomains/trac/conf/vhost.conf :
<Location />
  SetHandler mod_python
  PythonHandler trac.web.modpython_frontend
  PythonOption TracEnv /var/www/vhosts/myproject.com/subdomains/trac/httpdocs/
tracrepo/
  PythonOption TracUriRoot /
  SetEnv PYTHON_EGG_CACHE /tmp
  PythonInterpreter trac
  AuthType Basic
  AuthName "MyProject Trac System"
  AuthUserFile /etc/auth-file
  Require valid-user
</Location>


Le fichier /var/www/vhosts/myproject.com/subdomains/svn/conf/vhost.conf :
<location />
  DAV svn
  SVNPath
/var/www/vhosts/myproject.com/subdomains/svn/httpdocs/repo/
  AuthType Basic
  AuthName "MyProject Subversion Repository"
  AuthUserFile /etc/auth-file
  Require valid-user
</location>


Il nous reste plus qu'a relancer Apache et demander à Plesk de prendre en compte nos fichiers de configuration :

  • # /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=myproject.com : Damande à plesk de prendre en compte notre configuration.
  • # service httpd reload (ou service httpd restart) : Relance le serveur Apache.

Note : Ne pas oublier de configurer votre TRAC dans le fichier /var/www/vhosts/myproject.com/subdomains/trac/httpdocs/tracrepo/conf/trac.ini. Et de lire leur wiki pour les autres options.
 

Comments

B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Working....
Finished
Failed
 
Joomla 1.5 Templates by Joomlashack