Gault & Millau: La recette d'une migration savoureuse vers Symfony et le Cloud
Retrouvez comment le fameux guide gastronomique Gault & Millau a migré ses sites web vers Symfony et Platform.sh pour plus d’autonomie et un gain de temps élevé.
J’avais contacté SensioLabs car, étant développeur Symfony depuis 10 ans, leur offre d’hébergement cloud à l’époque était intéressante. Ensuite pour répondre à nos besoins au- delà de l’hébergement, nous avons entamé un dialogue à trois avec SensioLabs et Platform.sh, qui a débouché sur une migration, un setup réussi et une optimisation de notre workflow qui fonctionne très bien depuis.
Kevin Peron, CTO chez Gault & Millau.
L’entreprise
Gault & Millau est un guide gastronomique français fondé en 1972.
Disponible en format digital, il recense aujourd’hui de nombreux restaurants et soutient l’innovation dans la gastronomie. Jusqu’à présent, l’expertise Gault & Millau s’est aussi concentrée sur les jeunes talents, les jeunes chefs. Elle s’étend aujourd’hui dans 15 pays et évolue chaque jour, se concentrant sur l’analyse, l’inspection et la sélection d’artisans, de producteurs, d’hôtels, et enfin de vins, vignobles et champagnes de très haute qualité. Le guide recense toutes sortes de nouveaux univers comme le rhum et une encyclopédie du goût qui catégorise tous les ingrédients possibles.
En complément de ce guide, Gault & Millau exerce une activité B2B de labellisation afin d’analyser et valider la qualité nutritive et organoleptiques de certains produits pour des grandes marques. Gault & Millau assure également de nombreuses activités événementielles, notamment des partenariats avec des grandes marques.
Les enjeux
Dans la logique d’évolution et pour fournir un service tout aussi qualitatif, les activités digitales ont fait remonter un besoin d’une refonte complète des sites web Gault & Millau. C’est alors qu’une révolution digitale est lancée. La mise à jour ne devait pas avoir lieu uniquement sur la technologie backend, frontend ou sur la base de données, mais sur les trois, avec une mise à jour de l’infrastructure.
Pour cette migration à grande échelle, Gault & Millau, qui opérait en single page application, est aujourd’hui revenu sur une architecture web plus standard. Gault & Millau avait également des applications mobiles natives, qui vont passer en PWA. La base de données est passée en noSQL alors qu’elle était en base relationnelle auparavant. Le backend a été migré de Python/Django à Symfony. Quant au frontend, il est passé de Angular à Symfony/Twig/ Bootstrap pour être responsive et être compatible avec tous les systèmes.
La solution
Organisation d'un Atelier Infrastructure Cloud
Définition d'un schéma complet d’infrastructure pour une exploitation durable, scalable, optimisée et adaptée aux besoins et enjeux business à court et moyen terme
Optimisation et dimensionnement des capacités d'hébergement.
Design et séparation des services pour optimiser l'intercommunication entre eux et répondre aux exigences globales du projet
Mise en place du référentiel de monitoring pour comprendre l'usage de l’application sur un plan technique mais aussi business
Schéma d'industrialisation des process de déploiement afin d'assurer une performance optimale continuellement pilotée
L’histoire
À la genèse de cet effort de migration et de transformation, l’équipe technique de Gault & Millau a pris contact avec SensioLabs, le créateur de Symfony et expert en développement web. Au moment de la refonte, avant la mise en place des serveurs, SensioLabs a organisé un Atelier Infrastructure Cloud avec Gault & Millau. Cet atelier a permis de créer une infrastructure optimisée avec Symfony et conforme aux bonnes pratiques de développement.
Dans un deuxième temps, SensioLabs a mis en relation Gault & Millau avec son partenaire Platform.sh, la solution d’hébergement automatisé pour le déploiement continu. Platform.sh a permis à Gault & Millau de bénéficier d’environnements dynamiques, faciles à piloter, extensibles et scalables. Même si le seul interlocuteur de Gault & Millau était SensioLabs à ce moment-là, l’équipe de Platform.sh a été sollicitée pour la phase d’onboarding et a répondu présent pour les accompagner rapidement.
Grâce à cette nouvelle infrastructure et organisation déployées ainsi qu’à l’appui de SensioLabs dès le démarrage du projet, Gault & Millau est devenue agile à l’extrême. En une heure, une demande de correction ou d’évolution peut être testée et déployée, alors que par le passé, les demandes devaient être transmises aux équipes off-shore et être exécutées avec d’autres technologies. C’était un processus assez lourd et l’unité de temps était la semaine.
L’équipe de Gault & Millau est aujourd’hui vraiment agile au sens des technologies et dans leurs besoins. Il est crucial pour Gault & Millau d’aller vite et de pouvoir réagir rapidement. En effet, l’équipe reçoit des demandes de modifications et de tests tous les jours.
La plus grosse mission de Gault & Millau dans cette migration était la gestion des différents sites pays, par sous-domaines, pour les uniformiser à travers le monde. La principale complexité de cet effort se trouvait sur l’application et la gestion des données, qui sont strictement cloisonnées par pays. Chaque pays est un licencié qui a son propre droit d’utiliser la marque, son propre marché et ses propres données.
La gestion des certificats et des sous-domaines par pays était le plus gros défi technique, car il a fallu passer à l’échelle d’un multi site. Grâce à l’équipe onboarding de Platform.sh, tout a été mis en place en quelques jours. La difficulté n’était pas au niveau de l’infrastructure car il s’agissait d’une seule application et une seule base de données. Le back-office a été la plus grosse partie à piloter avec toutes les données, tout comme le front office géré par sous-domaine, en multi-langues donc avec des traductions.
Depuis l’intervention de SensioLabs et Platform.sh, Gault & Millau a ressenti un gain important de temps pour l’équipe. Une fois les bases installées pour tous les sites pays, il sera nettement plus facile et rapide de mettre à jour des éléments pour uniformiser les sites. N’étant pas formée au DevOps et ne souhaitant pas embaucher du personnel pour ce poste, l’équipe arrive à tout faire en interne, ce qui est un point essentiel. Même les développeurs généralistes peuvent prendre en main la console et bien comprendre les outils de Platform.sh pour être autonomes.
Enfin, l’élément le plus important pour la suite du développement des sites pays pour Gault & Millau est la scalabilité. Le fait de pouvoir déployer des services par une modification de fichier de configuration uniquement est très pratique et permettra, le long du processus, d’aller vite et d’optimiser à la fois le temps et les ressources.