Vous éditez le site Web d’un logiciel libre (au hasard, une documentation officielle) et vous aimeriez aussi que vos contributeurs / rédacteurs aient un moyen simple de rapporter des bugs. Comme toujours en informatique, il faut choisir le bon outil ; SPIP n’offrant pas les spécificités nécessaires, il faut se tourner vers un outil dédié. Pour PHP (voire en général), il y a peu de bons systèmes de gestions de bugs disponibles en logiciel libre. Mantis fait partie de ceux-là : il est simple d’accès (beaucoup de systèmes concurrents ressemblent à une usine à gaz pour décideurs pressés) et francisé.
Oui mais voilà, Mantis a bien entendu son propre système d’utilisateurs, avec son propre formulaire d’identification et sa propre procédure d’inscription (et, bien sûr, des logins et mots de passe différents à mémoriser...). Or il serait tout de même plus simple que SPIP et Mantis partagent le même système : ainsi vos contributeurs seront d’autant plus enclins à aller rapporter des bugs sous Mantis plutôt que de remplir les forums SPIP.
Deux solutions se dessinent. La première consiste à utiliser un annuaire externe LDAP. Elle est réservée aux pros de l’administration système et nécessite des outils séparés.
La deuxième consiste à exploiter la présente contribution. Elle nécessite tout simplement :
- une installation de SPIP
- Mantis version 0.17.x (attention, ce n’est certainement pas compatible avec la version 0.18 !)
- un éditeur de texte pour ajouter quelques lignes de configuration
Principe
Le principe général de cette contribution est très simple :
- les formulaires de connexion et déconnexion à Mantis sont remplacés par ceux de SPIP
- les auteurs SPIP se voient automatiquement créer un profil sous Mantis (leurs pouvoirs sont choisis en fonction de leur statut sous SPIP)
- rien d’autre n’est modifié : le fonctionnement de Mantis est complètement inchangé
Installation de Mantis
Tout d’abord, il faut installer Mantis dans un sous-répertoire de votre SPIP (que l’on suppose déjà installé). C’est très important : en effet Mantis réutilisera le cookie posé par SPIP, donc il n’est pas possible de mettre Mantis ailleurs que dans un sous-répertoire de SPIP. Mettons que ce sous-répertoire est nommé « mantis
».
Une fois cette installation effectuée, il faut créer la base de données et configurer les variables les plus importantes : cette procédure est décrite dans le fichier doc/INSTALL
du répertoire Mantis. Notez que cette étape ne diffère pas d’une installation normale de Mantis. Vous pouvez à ce point vérifier que Mantis fonctionne bien, « tout seul ».
Ensuite, vous devez installer les fichiers nécessaires à ce que Mantis se coordonne avec SPIP. Ces deux fichiers, login_page.php
et logout_page.php
sont livrés sous le présent article. Ils remplaceront les fichiers du même nom dans le répertoire Mantis (il est conseillé de faire une copie de sauvegarde des fichiers originaux).
Enfin, il faut ajouter au fichier de configuration que vous venez d’éditer, normalement config_inc.php
, deux lignes de configuration supplémentaires :
$g_spip_dir = "../";
$g_spip_mantis_admins = array("paul", "jeanjean");
Explications :
- la variable $g_spip_dir
définit l’emplacement relatif de votre SPIP par rapport à Mantis ; si vous avez placé Mantis dans un sous-répertoire direct de SPIP comme conseillé plus haut, cette valeur doit être « ../
»
- la variable $g_spip_mantis_admins
définit la liste des administrateurs SPIP qui seront administrateurs Mantis : nous verrons plus loin à quoi cela correspond... Vous devrez remplacer « paul
» et « jeanjean
» par un nombre arbitraire de logins d’administrateurs de votre site SPIP.
Fonctionnement
Une fois ces modifications effectuées, le formulaire de login de Mantis est désactivé et remplacé par celui de SPIP. De même, la procédure de déconnexion de Mantis est également renvoyée vers celle de SPIP : tout auteur connecté à SPIP est automatiquement connecté à Mantis, sans effort supplémentaire. Bien sûr, le formulaire d’inscription public de SPIP, s’il est activé, permettra à quiconque de rapporter des bugs sous Mantis.
Par ailleurs, lors de sa première connexion à Mantis, un auteur SPIP se voit automatiquement créer un profil sous Mantis (dans lequel est notamment recopiée l’adresse mail, afin d’avoir accès au suivi de bug automatisé par e-mail).
Très important : les pouvoirs de l’utilisateur sous Mantis sont choisis de la façon suivante :
- Les rédacteurs et visiteurs enregistrés SPIP deviennent « rapporteurs de bugs » ;
- les administrateurs SPIP deviennent « développeurs » ;
- les administrateurs SPIP présents dans la variable de configuration
$g_spip_mantis_admins
deviennent « administrateurs » Mantis (c’est-à-dire omnipotents).
C’est pourquoi la variable de configuration ci-dessus est capitale : si vous ne la réglez pas correctement, il n’y aura aucun administrateur sous Mantis, et il ne sera pas possible de créer des projets, des catégories, etc. Vous devrez alors effacer la base de données Mantis pour reprendre l’installation à zéro.
Discussions par date d’activité
Une discussion
quelqu’un a t’il essayé de faire fonctionner ce montage entre spip et mantis. Pour ma part, j’ai essayé entre mantis 0.17.5 et spip 1.6 et cela ne fonctionne pas.
Y a t’il d’autres opérations à effectuer en plus de celles citées dans l’article.
merci d’avance.
Cela fonctionne avec Mantis 0.17.5 sur le gestionnaire de bugs de SPIP.
Peux-tu être plus précis sur les symptômes ? Est-ce que le login de Mantis redirige bien vers le login de SPIP ? Que se passe-t-il ensuite ?...
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |