Configuration supplémentaire facultative

Bugzilla a un nombre important d’options. Cette section décrit comment les configurer ou les activer.

Les graphiques de bogues

Si vous avez installé les modules Perl nécessaires, vous pouvez commencer à collecter des statistiques pour les superbes graphes Bugzilla.

bash# crontab -e

Ceci devrait afficher le fichier crontab dans votre éditeur. Ajoutez une entrée « cron » comme ceci pour exécuter collectstats.pl tous les jours à minuit 5 :

5 0 * * * cd <your-bugzilla-directory> ; ./collectstats.pl

Deux jours après, vous pourrez visualiser les graphiques de bogues depuis la page de rapport de bogue.

Note

Windows n’a pas de ’cron’, mais il a un planificateur de tâches, qui fournit les mêmes fonctions. Il y a également des outils conçus par des tiers qui peuvent être utilisés pour exécuter cron, tels que nncron.

Diagrammes de dépendance

Tout comme les arborescences de dépendance en mode texte, Bugzilla permet également des aperçus graphiques, en utilisant un logiciel appelé « dot ». C’est le paramètre webdotbase qui en assure précisément le fonctionnement ; il peut prendre l’une de ces trois valeurs :

  1. Le chemin d'accès complet à la commande 'dot' (qui fait partie de GraphViz) qui va générer les graphiques localement.

  2. Un préfixe URL pointant vers une installation du logiciel webdot qui va générer les graphiques à distance.

  3. Une valeur nulle qui désactive les graphiques de dépendance.

La façon la plus simple de le faire fonctionner est d’installer GraphViz. Dans ce cas, vous devez activer les cartes d'image côté serveur dans Apache. Autrement, vous pouvez installer un serveur webdot ou utiliser le serveur public webdot AT&T. C’est le choix par défaut pour l'option webdotbase mais il est souvent surchargé et lent. Notez que le serveur de AT&T ne fonctionnera pas si Bugzilla n'est accessible que par HARTS. Note du rédacteur: Mais bon sang, qu’est ce que c’est que ce HARTS ? Google ne sait pas….

Le planificateur de pleurnicherie

Les meilleurs bogues ne sont-ils pas aussi les plus énervants ? Pour vous aider à rendre ces bogues encore plus agaçants, vous pouvez activer le système automatique de plainte de Bugzilla pour vous plaindre des ingénieurs qui laissent leur bogues dans un état NEW ou REOPENED sans faire de triage.

Pour ce faire, ajoutez la commande suivante en tant qu'entrée crontab quotidienne, de la même manière que cela a été fait plus haut pour les diagrammes de bogue. Dans cet exemple, le planificateur s’active à minuit 55 :

55 0 * * * cd <your-bugzilla-directory> ; ./whineatnews.pl

Note

Windows n’a pas de ’cron’, mais il a un planificateur de tâches, qui fournit les mêmes fonctions. Il y a également des outils conçus par des tiers qui peuvent être utilisés pour exécuter cron, tel que nncron.

Patch Viewer

Patch Viewer est le moteur qui permet l’affichage graphique des correctifs. Vous pouvez l’intégrer avec des copies des outils cvs, lxr et bonsai si vous les avez, en donnant l’emplacement de votre installation de ces outils dans editparams.cgi.

Patch Viewer pourra aussi éventuellement utiliser les utilitaires de ligne de commande cvs, diff et interdiff s'ils existent sur le système. On peut obtenir Interdiff sur http://cyberelk.net/tim/patchutils/. Si ces programmes ne sont pas dans le chemin du système, vous pouvez configurer leurs emplacements dans localconfig.

Authentification LDAP

L’authentification LDAP est un module pour l’architecture d’authentification de plugin de Bugzilla.

Le schéma d'authentification traditionnel de Bugzilla utilise les adresses de courrier électronique comme identifiant utilisateur primaire et un mot de passe pour identifier l'utilisateur. Tous les endroits de Bugzilla qui traitent les utilisateurs (par exemple pour assigner un bogue) utilisent l'adresse de courrier électronique. L'authentification LDAP se place au dessus de ce schéma au lieu de le remplacer. L'utilisateur se connecte au début avec un nom d'utilisateur et un mot de passe pour l'annuaire LDAP. L'adresse de courrier électronique est récupérée depuis LDAP et l'utilisateur est identifié par le système traditionnel d'une façon cohérente en utilisant son adresse de courrier électronique. Si un compte pour cette adresse de courrier électronique existe déjà dans votre système Bugzilla, il s'y connectera. Si aucun compte pour cette adresse de courrier électronique n'existe, un compte est créé au cours de la connexion. (Dans ce cas, Bugzilla essaie d'utiliser les attributs « displayName » ou « cn » pour déterminer le nom complet de l'utilisateur). Après l'authentification, toutes les tâches liées à cet utilisateur sont gérées par l'adresse de courrier électronique et non par le nom d'utilisateur LDAP. Vous continuez d'assigner des bogues par adresse de courrier électronique, de rechercher des utilisateurs par adresse de courrier électronique, etc.

Attention

Du fait que le compte Bugzilla ne se crée qu’à la première connexion d’un utilisateur, un utilisateur qui ne s'est pas encore connecté est inconnu de Bugzilla. Ceci signifie qu'ils ne peuvent pas être utilisés comme propriétaire d'un bogue ou contact QA (que ce soit par défaut ou autrement), ajoutés à une liste cc, ou toute autre opération de ce genre. Une solution de rechange possible est le script bugzilla_ldapsync.rb dans le répertoire contrib. Une autre solution possible est de corriger le bogue 201069.

Paramètres requis pour utiliser l’authentification LDAP :

loginmethod

Ce paramètre doit être fixé à « LDAP » seulement si vous allez utiliser un répertoire LDAP pour l’authentification. Si vous mettez ce paramètre à « LDAP » mais que vous ne réglez pas les autres paramètres de la liste ci-dessous, vous ne pourrez pas vous reconnecter à Bugzilla une fois que vous serez déconnecté. Si cela vous arrive, vous devrez éditer manuellement data/params et mettre loginmethod à « DB ».

LDAPserver

Pour ce paramètre, vous devez indiquer le nom (et le port si vous le souhaitez) de votre serveur LDAP. Si le port n’est pas spécifié, il considère que c’est le port LPDA par défaut 389.

Ex. « ldap.company.com » ou « ldap.company.com:3268 »

LDAPbinddn [Optional]

Certains serveurs LDAP n’autoriseront pas une connexion anonyme à faire une recherche dans le répertoire. Si c’est le cas pour votre configuration, vous devrez régler le paramètre LDAPbinddn au compte de l’utilisateur que Bugzilla devra utiliser à la place de la connexion anonyme.

Ex. « cn=default,cn=user:password »

LDAPBaseDN

Pour le paramètre LDAPBaseDN vous devrez indiquer l’emplacement dans votre arborescence LDAP où vous aimeriez que se fasse la recherche des adresses électroniques. Vos identifiants UID devraient être uniques sous la base DN indiqués ici.

Ex. « ou=People,o=Company »

LDAPuidattribute

Pour le paramètre LDAPuidattribute vous devrez indiquer l’attribut qui contient l’UID unique de vos utilisateurs. La valeur récupérée de cet attribut sera utilisée quand ils essayeront de se connecter en tant qu'utilisateur pour confirmer leur mot de passe.

Ex. « uid »

LDAPmailattribute

Le paramètre LDAPmailattribute doit être le nom de l’attribut qui contient l’adresse électronique que vos utilisateurs entreront dans les cases d’identification de Bugzilla.

Ex. « mail »

Traitement des formats différents avec le type de MIME adéquat

Certaines pages de Bugzilla ont des formats différents, autres que le HTML ordinaire. En particulier, quelques pages peuvent produire leur contenu soit en XUL (un format spécial de Bugzilla, qui ressemble à un programme GUI) soit en RDF (un genre d’XML structuré qui peut être lu par de nombreux programmes).

Pour que vos utilisateurs voient ces pages correctement, Apache doit les envoyer avec le type MIME adéquat. Pour ce faire, ajoutez les lignes suivantes à la configuration d’Apache, soit dans la section <VirtualHost> pour votre Bugzilla, soit dans la section <Directory> pour votre Bugzilla :

AddType application/vnd.mozilla.xul+xml .xul
AddType text/xml .rdf