Magento : une plate-forme d'e-commerce en PHP Gérer le cycle de vie des modules

L'un des problèmes à gérer lors du cycle de développement est la gestion de la mise en production et de l'installation du code à un environnement existant, voire la mise à jour d'un code existant. Cela passe habituellement par la rédaction, souvent fastidieuse, d'une procédure d'installation et/ou de mise à jour.

système magento connect
Système Magento Connect © Magento

Gestion de l'installation et de la mise à jour des modules

L'une des innovations de Magento est le système "Magento connect". Le principe est simple : le module est empaqueté dans une archive, puis publié sur le site de Magento. Dès lors, l'e-commerçant peut télécharger le module via son panneau d'administration. L'installation se déroule alors automatiquement. Pour les mises à jour, Magento intègre un système de version à la gestion des modules, ce qui permet de lancer un programme d'installation ou de mise à jour suivant la version du module détectée par Magento.

Exemple : Je crée une première version (v1.0.0) de mon module Toto. Mon module possède alors un fichier nommé mysql4-install-0.1.0.php qui contient la création des tables nécessaires à mon module. Plus tard, je modifie mon module et supprime l'une des tables. Je passe alors en v1.0.1 et je crée un fichier mysql4-upgrade-1.0.0-1.0.1.php dans lequel je ne place que la requête de suppression de la table.

La possibilité de contrôler si la version de PHP utilisée est compatible avec un nouveau module

Ainsi, selon la version du module déjà installée sur le site, Magento exécutera mysql4-install-0.1.0.php suivi de mysql4-upgrade-1.0.0-1.0.1.php ou exécutera mysql4-upgrade-1.0.0-1.0.1.php si la version 1.0.0 était déjà installée.

Gestion des dépendances entre les modules

A l'installation, un paquet sera capable de gérer les dépendances entre les modules et leurs versions, de vérifier la présence d'une extension PHP nécessaire au fonctionnement du module et même de contrôler si la version de PHP utilisée est compatible avec le module. Enfin, la création d'un package est très simple car tout se passe dans l'interface d'administration de Magento.

Une fois le module publié sur "Magento Connect", le commerçant peut alors vérifier la présence de mise à jour simplement via son interface d'administration dédiée, le téléchargement et l'installation se faisant automatiquement.