- Serveur Web pour héberger le site de votre projet (Apache)
- Serveur SVN (Subversion)
- Serveur Trac pour le suivi des bugs, le recueil des demandes de nouvelles fonctions et la roadmap de votre projet
Installation du système d'exploitation
Peut importe l'OS, il faut juste que vous soyer à l'aise avec lui. Donc n'importe quel OS GNU/Linux, BSD ou Unix fera l'affaire (si tu demandes et Windows ? tu cliques sur le bouton Démarrer / Arrêter l'ordinateur et tu installes un vrai OS). Personnellement, j'utilise pour illustrer ce billet une Ubuntu Serveur 8.04, l'installation se fera via le compte root et le nom de ma machine est dev.mondomaine.com. Pour être sûr que votre serveur Ubuntu est à jour:aptitude update aptitude safe-upgrade
Installation du serveur Web
Tout commence par l'installation d'Apach et de son module SVN:aptitude install apache2 libapache2-svn
Puis on désactive les sites par défaut (le fameux "It works!"):
sudo a2dissite default
/etc/init.d/apache2 reload
A ce stade, le serveur devrait vous renvoyer un message comme quoi aucun serveur virtuel n'est configuré ("[warn] NameVirtualHost *:80 has no VirtualHosts").
Nous allons donc créer le serveur virtuel du projet (libre à vous d'en créer autant que de besoins):
# vi /etc/apache2/sites-available/dev.mondomaine.com <virtualHost *:80> ServerName dev.mondomaine.com ServerAdmin [email protected] DocumentRoot /var/www/dev/ ErrorLog /var/log/apache2/error.log <Directory /> Options FollowSymLinks AllowOverride All </Directory> </virtualHost>On active le serveur virtuel dans la configuration d'Apache:
mkdir /var/www/dev a2ensite dev.mondomaine.com /etc/init.d/apache2 reloadOn teste l'installation:
echo "OK" > /var/www/dev/index.htmlPuis on ouvre un navigateur à l'URL: http://dev.mondomaine.com/
Installation du serveur SVN
On installe Subversion en suivant la procédure suivante (le projet sera donc stocké dans le répertoire /var/svn/projet, à modifier selon votre bon vouloir...). On configure Apache pour qu'il puisse lire ce dépôt:# vi /etc/apache2/mods-available/dav_svn.conf <Location /svn> DAV svn SVNParentPath /var/svn SVNListParentPath On AuthType Basic AuthName "Ubik Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location>On créé un utilisateur privilégié qui aura les droits de commit sur le dépôt:
htpasswd -cs /etc/apache2/dav_svn.passwd nicolargoAttention les prochain utilisateurs devront être créés avec la commande:
htpasswd -s /etc/apache2/dav_svn.passwd titiPuis on redémarre le serveur:
sudo /etc/init.d/apache2 restartIl est possible de tester l'installation en entrant l'URL suivante dans votre navigateur Web: http://dev.mondomaine.com/svn/projet/ La liste des dépôt devrait apparaitre. Le dépôt SVN de votre projet est donc maintenant accessible via l'adresse: http://dev.mondomaine.com/svn/projet/ Lors d'un commit, un couple login/password sera demandé automatiquement (il faudra saisir les informations d'un utilisateur privilégié).
Installation du serveur Trac
On installe Trac:aptitude install libapache2-mod-python2 trac python-pygments enscript sudo a2enmod mod_pythonPS: "aptitude install libapache2.4-mod-python2 trac" sous Ubuntu Janty 9.04 On ajoute la configuration suivante dans le fichier /etc/apache2/sites-available/dev.mondomaine.com (dans la balise VirtualHost): <Location /trac> SetHandler mod_python PythonInterpreter main_interpreter PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /var/www/ubik-dev/trac PythonOption TracUriRoot /trac PythonOption PYTHON_EGG_CACHE /tmp </Location> <LocationMatch "/trac/[[:alnum:]]+/login"> AuthType Basic AuthName "Trac Dev server" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </LocationMatch>
<Location /trac> SetHandler mod_python PythonInterpreter main_interpreter PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /var/www/dev/trac PythonOption TracUriRoot /trac PythonOption PYTHON_EGG_CACHE /tmp </Location> <LocationMatch "/trac/[[:alnum:]]+/login"> AuthType Basic AuthName "Trac Dev server" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </LocationMatch>Puis on créé le trac pour notre projet:
trac-admin /var/www/dev/trac/projet initenvEt on lui fixe les bons droits:
chown -R www-data:www-data /var/www/dev/trac/Et voili, le site Trac de votre projet est maintenant accessible via l'URL: http://dev.mondomaine.com/trac/projet/ Il ne vous reste plus qu'a faire une jolie page Web d'accueil a mettre dans le répertoire /var/www/dev/ et à lancer votre campagne de communication ! Sources m'ayant aidées lors de la rédaction de ce billet: