Update vers GLPI 10 : une interface transformée !

Je viens d’effectuer la mise à jour de mon GLPI 9.5.5 vers la version 10.0.0 et la nouvelle interface est une divine surprise. Le seul souci est que le choix de la mise en œuvre du Market Place dans GLPI a fait exploser la communauté des développeurs en deux. Une partie d’entre eux a choisi TecLib et la version cloud de GLPI : l’autre soutient l’initiative de David Durieux et son GLPISC Open Source qui reste en 9.5.7. Du coup, vous ne disposerez plus de certains plugins fort utiles sous GLPI, à moins qu’ils ne soient repris par TecLib. Quel gâchis !

Pour ma part, je continuerai de former sur les deux produits. J’utilise, je forme, j’installe GLPI depuis 2007.

Mise à jour de GLPI

Téléchargez l’archive tgz, décompressez-la et déplacez les fichiers dans le répertoire de l’application.

cd/home/outils
wget https://github.com/glpi-project/glpi/releases/download/10.0.0/glpi-10.0.0.tgz
tar zxvf glpi-10.0.0.tgz
mv glpi /home/www
chown -R apache:apache /home/www.glpi

La mise à jour se fait au travers de l’interface Web ou bien à l’aide de la commande :

cd /home/www
php bin/console db:update

GLPI SETUP > Update 10.0.0

De très lourdes manipulations post-installation

Au niveau de l’écran précédent et au moment de vous connecter à GLPI, vous aurez à exécuter tout un tas de commandes relatives à la configuration du cache, des fuseaux horaires et des valeurs de clés.

Concernant la gestion des fuseaux horaires, il faut d’abord donner les droits sur la table mysql.time_zone_name après vous être connecté à votre instance MariaDB à l’aide de l’interpréteur mysql :

GRANT SELECT ON mysql.time_zone_name TO glpi@localhost;

Cette table est alimentée à l’aide la commande suivante :

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -p -u root

Vous devez ensuite exécuter des commandes GLPI en mode console :

cd /home/www/glpi
php bin/console glpi:migration:timestamps
php bin/console glpi:database:enable_timezones

Pour la configuration du cache, c’est beaucoup plus simple :

cd /home/www/glpi
php bin/console cache:configure --use-default

Il est également préconisé de prendre en charge l’encodage utf8mb4 :

php bin/console glpi:migration:utf8mb4

Pour les colonnes des clés à valeurs entières négatives à passer en valeurs entières non signées, vous devez exécuter la commande suivante :

php bin/console glpi:migration:unsigned_keys

J’ai dû supprimer manuellement les enregistrements de la table glpi_domains dont la clé entities_id comprenait une valeur négative, sans aucune conséquence particulière. Cela resterait à vérifier pour d’autres situations.

DELETE FROM glpi_domains WHERE entities_id < 0;

J’ai ensuite relancé la commande :

php bin/console glpi:migration:unsigned_keys

Renommer le fichier install.php

J’ai enfin renommer le fichier install/install.php en install/install.php.old à l’aide de la commande mv :

mv /home/glpi/install/install.php /home/glpi/install/install.php.old

Les plugins GLPI à installer

J’ai rencontré des sérieux problèmes de stabilité de l’application lorsque j’ai voulu nettoyer le plugin formcreator et fusioninventory. Ce genre de soucis ne m’était encore jamais arrivé. Obligé de faire une commande SQL :

DELETE FROM glpi_plugins;

J’utilise pour ma part la liste des plugins GLPI suivants :

Comme vous le voyez, il commence à y avoir du rififi dans le projet et TecLib aurait peut-être mieux fait d’y réfléchir à deux fois à vouloir chercher à imposer son Market Place !

La nouvelle interface

Il était temps de faire quelque chose !

Interface standard GLPI 10.0.0

Documentation

GLPI  / Formateur GLPI