3.3. Windows¶
Faire fonctionner Bugzilla sous Windows est plus difficile que sous GNU/Linux. Cependant, peu de développeurs utilisent Windows pour tester Bugzilla et nous vous recommandons donc d'utiliser GNU/Linux pour des installations conséquentes pour avoir un meilleur support.
3.3.1. Perl¶
Vous avez deux possibilités principales pour installer Perl sur Windows : ActivePerl et Strawberry Perl.
L'installeur ActivePerl pour Windows peut être téléchargé sur le site Web de ActiveState.
Perl sera installé par défaut dans le répertoire C:\Perl
. Il n'est pas recommandé
d'installer Perl dans un répertoire dont le nom contient une espace, tel
que C:\Program Files
. Une fois l'installation terminée, fermez votre session Windows
et reconnectez-vous pour que les changements dans la variable d'environnement PATH
soient pris en compte.
L'installeur Strawberry Perl pour Windows peut être téléchargé sur le
site de Strawberry Perl. Perl sera installé par défaut
dans C:\Strawberry
.
Un des gros avantages de Strawberry Perl par rapport à ActivePerl, c'est qu'avec Strawberry
Perl, vous pouvez utiliser les outils habituels disponibles dans d'autres systèmes d'exploitation
pour installer des modules Perl manquants directement à partir de CPAN, alors que ActivePerl nécessite
d'utiliser son propre outil ppm
pour télécharger les modules Perl pré-compilés d'ActiveState.
Les modules du dépôt d'ActivePerl peuvent être un peu moins récents que ceux disponibles sur CPAN.
3.3.2. Bugzilla¶
Le meilleur moyen de récupérer Bugzilla est de l'obtenir avec Git. Téléchargez et installez Git à partir du site Web de Git, puis exécutez la commande suivante :
git clone --branch release-X.X-stable https://github.com/bugzilla/bugzilla C:\bugzilla
où X.X
est le numéro de version à deux chiffres de la version stable que vous voulez
installer (par ex. : 5.0
).
La suite de cette documentation suppose que vous avez installé Bugzilla dans le
répertoire C:\bugzilla
. Ajustez les chemins d'accès en conséquence si ce n'est pas le cas.
S'il n'est pas possible d'utiliser Git (par ex. parce que votre machine n'a pas d'accès
à Internet), vous pouvez
télécharger une archive de Bugzilla et la recopier
sur votre machine. Bugzilla est livré sous forme d'archive (extension .tar.gz
),
qui peut être décompressée par tout archiveur Windows reconnaissant ce format.
3.3.3. Modules Perl¶
Bugzilla nécessite de nombreux modules Perl. Certains sont obligatoires et d'autres, activant des fonctionnalités supplémentaires, sont optionnels.
Si vous utilisez ActiveState, ces modules sont disponibles dans le dépôt d'ActiveState
et sont installés avec l'outil ppm
.
Vous pouvez l'utiliser en ligne de commande, comme ci-dessous, ou saisir
la commande ppm pour obtenir l'interface graphique.
Si vous utilisez un proxy ou un pare-feu, vous pourriez rencontrer des difficultés pour utiliser PPM. Ceci est abordé dans la FAQ ActivePerl.
Installez les modules obligatoires suivants avec la commande :
ppm install <nom_du_module>
- CGI.pm
- Digest-SHA
- TimeDate
- DateTime
- DateTime-TimeZone
- DBI
- Template-Toolkit
- Email-Sender
- Email-MIME
- URI
- List-MoreUtils
- Math-Random-ISAAC
- File-Slurp
- JSON-XS
- Win32
- Win32-API
- DateTime-TimeZone-Local-Win32
Les modules suivants activent diverses fonctionnalités optionnelles de Bugzilla :
- GD
- Chart
- Template-GD
- GDTextUtil
- GDGraph
- MIME-tools
- libwww-perl
- XML-Twig
- PatchReader
- perl-ldap
- Authen-SASL
- Net-SMTP-SSL
- RadiusPerl
- SOAP-Lite
- XMLRPC-Lite
- JSON-RPC
- Test-Taint
- HTML-Parser
- HTML-Scrubber
- Encode
- Encode-Detect
- Email-Reply
- HTML-FormatText-WithLinks
- TheSchwartz
- Daemon-Generic
- mod_perl
- Apache-SizeLimit
- File-MimeInfo
- IO-stringy
- Cache-Memcached
- File-Copy-Recursive
Si vous utilisez Strawberry Perl, vous devez utiliser le script install-module.pl
pour installer les modules, qui est le même que celui utilisé pour Linux. Certains des modules
obligatoires sont déjà installés par défaut. Pour les modules restants, utilisez la
commande suivante :
perl install-module.pl <modulename>
La liste des modules à installer sera affichée par le script checksetup.pl
; voir
ci-dessous.
3.3.4. Serveur Web¶
Tout serveur Web capable d'exécuter des scripts CGI peut fonctionner. Nous avons des instructions spécifiques pour les suivants :
3.3.5. Moteurs de base de données¶
Bugzilla peut fonctionner avec MySQL, PostgreSQL, Oracle et SQLite. Un seul de ces moteurs de base de données est nécessaire pour utiliser Bugzilla. MySQL est le plus couramment utilisé et c'est le seul avec lequel les instructions pour Windows ont été testées. SQLite est pratique pour des installations de tests car il ne nécessite par de configuration. Configurez votre serveur selon les instructions ci-dessous :
3.3.6. localconfig¶
Vous devez maintenant exécuter checksetup.pl
à nouveau, cette fois
sans l'argument --check-modules
.
checksetup.pl
Cette fois, checksetup.pl
devrait vous dire que tous les
modules appropriés sont installés et affichera un message à ce sujet, et générera
un fichier de sortie appelé localconfig
. Ce fichier contient les
paramètres par défaut pour un grand nombre de paramètres de Bugzilla.
Ouvrez ce fichier dans votre éditeur. Les deux seules valeurs que vous avez
besoin de changer sont $db_driver
et $db_pass
,
respectivement le type de base de données et le mot de passe pour
l'utilisateur qui créera pour vous la base de données. Choisissez un mot de passe
compliqué (pour la simplicité, il ne devrait pas contenir d'apostrophe)
et saisissez-le dans le fichier. $db_driver
peut être mysql
,
Pg
(PostgreSQL), oracle
ou SQLite
.
Définissez la valeur de $webservergroup
avec le nom groupe avec lequel votre serveur Web s'exécute.
- Fedora/Red Hat :
apache
- Debian/Ubuntu :
www-data
- Mac OS X :
_www
- Windows : ignorez ce paramètre car il n'est pas utile pour ce système d'exploitation
Les autres options dans le fichier localconfig
sont documentées avec leurs
commentaires. Si vous avez une configuration de base de données non standard, vous aurez
peut-être besoin de modifier d'autres paramètres $db_*
.
Note
Sous Oracle, $db_name
devrait en fait être
le nom du SID de votre base de données (par ex. XE
si vous utilisez Oracle XE).
3.3.7. checksetup.pl¶
Ensuite, exécutez checksetup.pl
une nouvelle fois :
checksetup.pl
Il confirmera à nouveau
que tous les modules sont présents et remarquera la modification
du fichier localconfig
, en supposant que vous l'avez modifié
à votre convenance. Il compile ensuite les modèles de l'interface utilisateur,
se connecte à la base de données en utilisant l'utilisateur bugs
que vous avez créé et le mot de passe que vous avez défini et crée enfin la base de
données bugs
et les tables à l'intérieur.
Après cela, il demande des détails sur le compte administrateur. Bugzilla peut avoir plusieurs administrateurs --vous pouvez en créer d'autres plus tard-- mais il en a besoin d'un pour démarrer. Saisissez l'adresse électronique d'un administrateur, son nom complet, et un mot de passe approprié pour Bugzilla.
checksetup.pl
se terminera alors. Vous pouvez relancer
checksetup.pl
à tout moment si vous le souhaitez.
3.3.8. Bravo¶
Votre installation Bugzilla devrait à présent fonctionner. Vérifiez-le en exécutant la commande suivante :
testserver.pl http://<your-bugzilla-server>/
Si elle passe sans erreur, accédez à http://<your-bugzilla-server>/
dans votre navigateur
--vous devriez alors voir la page d'accueil de Bugzilla. Bien sûr, si vous avez installé Bugzilla
dans un sous-répertoire, assurez-vous que celui-ci figure dans URL.
Si vous ne voyez pas la page d'accueil de Bugzilla, mais « It works!!! »,
c'est qu'Apache n'a pas pris en compte vos modifications dans le
fichier httpd.conf
. Si vous êtes sous Windows 7 ou versions suivantes, cela peut être dû à une nouvelle fonctionnalité
appelée « VirtualStore ». Ce billet de blog
peut vous aider à résoudre ce problème.
Si vous obtenez un message « Internal Error… », c'est peut-être parce que
ScriptInterpreterSource Registry-Strict
n'est pas défini dans
votre Configuration Apache. Vérifiez à nouveau si ce paramètre est correctement
défini.
Ensuite, consultez Configuration post-installation essentielle.
Cette documentation contient très probablement des bogues ; si vous en découvrez, veuillez les signaler ici.