Outils internes

Un article de Limoilux - Wiki.

ÉTAT DU PROJET : Ce projet est en phase de remue-méninges (ou brainstorming ;) )


Ce projet tente d'organiser l'installation et la maintenance des outils internes à Limoilux.

Sommaire

Qu'est-ce qu'un outil interne ?

Un outil interne est un outil utilisé par Limoilux pour la gestion de ses projets, ses membres ou pour travailler. Des exemples d'outils sont ce wiki qui permet de documenter le travail ou le serveur de mail qui permet aux membres de communiquer.

Voir Infrastructure, Inventaire de Limoilux et À faire

À installer

Serveur Jabber

  • Pour faciliter la messagerie instantanée entre les membres.

À maintenir

Exim

  • Brancher la connection des usagers sur le serveur LDAP

Site web

  • Le tenir à jour
  • L'améliorer (respect des standards, faciliter la mise à jour, etc)

Drupal

OpenLDAP

  • Pour centraliser la gestion des usagers.

Serveur IRC

  • Pour permettre aux personnes de rejoindre facilement la communauté.

Trac

SVP, gardez les paths

Créer votre projet dans OpenLDAP

  • Si vous voulez créer un projet vous devriez être capable. Sinon, demandez à la Mailing List

Créer votre Mailing List

  • Utiliser le script de mailman
/usr/lib/mailman/bin/newlist
Enter the name of the list: PROJECT_NAME [ENTER]
Enter the email of the person running the list: YOUR_MAIL [ENTER]
Initial PROJECT_NAME password: <YOUR_PASS> [ENTER]
Hit enter to notify PROJECT_NAME owner... [ENTER]

Créer une voûte documentaire

  • Créer le répoertoire et les fichier nécessaires
svnadmin create /srv/svn/repositories/PROJECT_NAME

Créer votre trac

  • Créer le répertoire de projet
mkdir -p /srv/projects/PROJECT_NAME.limoilux.org/trac
  • Changer les permissions
chown -Rv www-data:www-data /srv/svn/repositories/PROJECT_NAME
chown -Rv www-data:www-data /srv/projects/PROJECT_NAME.limoilux.org
  • Créer l'entrée DNS (dans /etc/bind/zones/db.limoilux.org ajouter:)
PROJECT_NAME  IN      CNAME   jade-1
  • Redémarrer le service
/etc/init.d/bind9 reload
  • Créer le fichier /etc/apache2/sites-available/PROJECT_NAME.limoilux.org
<VirtualHost *:80>
        ServerAdmin <your_mail>
        ServerName PROJECT_NAME.limoilux.org

        DocumentRoot /srv/projects/PROJECT_NAME.limoilux.org
        <Directory "/srv/projects/PROJECT_NAME.limoilux.org">
                Options FollowSymLinks
                AllowOverride All
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        <Location "/trac">
                SetHandler mod_python
                PythonHandler trac.web.modpython_frontend
                PythonOption TracEnv /srv/projects/PROJECT_NAME.limoilux.org/trac
                PythonOption TracUriRoot /trac
                PythonInterpreter main_interpreter
        </Location>

        <LocationMatch "/trac/login">
                AuthType Basic
                AuthBasicProvider ldap
                AuthName "PROJECT_NAME.limoilux.org - Project manager"
                AuthLDAPURL ldap://ldap.limoilux.org/ou=People,dc=limoilux,dc=org?uid
                AuthLDAPBindDN "CN=tracbind,DC=limoilux,DC=org"
                AuthLDAPBindPassword tracbind
                AuthzLDAPAuthoritative off
                Require ldap-group cn=tracadmin,ou=PROJECT_NAME,ou=Project,dc=limoilux,dc=org
        </LocationMatch>

        <LocationMatch "/svn">
                DAV svn
                SVNPath "/srv/svn/repositories/PROJECT_NAME"

                <LimitExcept GET PROPFIND OPTIONS REPORT>
                        AuthType Basic
                        AuthBasicProvider ldap
                        AuthName "limoilux.org Subversion Repositories"
                        AuthLDAPURL ldap://ldap.limoilux.org/dc=limoilux,dc=org?uid
                        AuthLDAPBindDN "CN=svnbind,DC=limoilux,DC=org"
                        AuthLDAPBindPassword svnbind
                        AuthzLDAPAuthoritative off
                        Require ldap-group cn=svnwrite,ou=PROJECT_NAME,ou=Project,dc=limoilux,dc=org
                </LimitExcept>
        </LocationMatch>

        ErrorLog /var/log/apache2/limoilux.org/PROJECT_NAME.error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/limoilux.org/PROJECT_NAME.access.log combined

</VirtualHost>
  • Activer le virtual host
a2ensite PROJECT_NAME.limoilux.org
/etc/init.d/apache2 reload
  • Créer la première révision
svn checkout http://PROJECT_NAME.limoilux.org/svn /home/your_username/tmp
cd /home/your_username/tmp
mkdir trunk
mkdir tags
mkdir branches
svn add ./*
svn commit -m "Initial commit"
cd ..
rm -Rv tmp
  • Créer le trac
trac-admin /srv/projects/PROJECT_NAME.limoilux.org/trac initenv

Project Name [My Project]>PROJECT_NAME [ENTER]
Database connection string [sqlite:db/trac.db]>[ENTER]
Repository type [svn]> [ENTER]
Path to repository [/path/to/repos]> /srv/svn/repositories/PROJECT_NAME [ENTER]
Templates directory [/usr/share/trac/templates]> [ENTER]<br />
  • Créer la règle de redirection (dans /srv/projects/PROJECT_NAME.limoilux.org)
RedirectMatch permanent ^/$ http://PROJECT_NAME.limoilux.org/trac/