This is a test agenda: Agenda
- :
- :
- :
- :
- :
- :
- :
Veepee a complètement revu son repository central et a intensifié ses efforts de déploiement et de sécurité grâce à GitLab. GitLab Enterprise a permis de transformer la production informatique ainsi que les workflows de Veepee en améliorant le CI, en automatisant les tests et en accélérant le CD.
Veepee, anciennement connu sous le nom de vente-privee.com, est une entreprise de e-commerce fondée en 2001 et spécialisée dans les ventes flash en ligne. En partenariat avec de grandes marques, Veepee crée des ventes événementielles quotidiennes à durée limitée, sur des produits bien précis, qui sont proposés à des prix fortement réduits pour des raisons commerciales ou promotionnelles.
Implantée dans toute l'Europe, Veepee est le fruit de la transformation réussie d'une activité de longue date – les ventes de déstockage – par un modèle de e-commerce révolutionnaire qui a depuis été copié dans le monde entier. vpTech, la communauté technologique de l'enseigne, soutient les activités et la croissance de l'entreprise. L'équipe gère plus de 70 produits à l'aide d'une cinquantaine de technologies. Présente dans six pays d'Europe, l'entreprise revendique la flexibilité, l'autonomie et la multiculturalité de ses équipes.
L'année 2016 a été un tournant pour Veepee, avec notamment le développement de ses activités dans toute l'Europe. Afin d'anticiper les éventuels problèmes à venir, l'équipe vpTech a pris l'engagement suivant : harmoniser l'ensemble du patrimoine de Veepee et adopter un système informatique à la fois moderne et agile. Pour ce faire, l'équipe est passée de 300 à 750 collaborateurs.
Au début, vpTech a dû faire face à une série de problèmes concernant son workflow de publication initial. Chaque équipe utilisait ses propres outils, ce qui rendait la collaboration et la contribution difficiles. Les équipes se plaignaient de ne pouvoir accéder facilement au code des autres et n'avaient aucun moyen de collaborer efficacement entre elles.
De plus, avec le précédent workflow, le déploiement en production était lent et fastidieux.« La situation était loin d'être idéale car il était presque impossible de publier quelque chose rapidement, seuls les cas d'urgence pouvaient s'affranchir de tout le processus », explique Antoine Millet, responsable des opérations informatiques chez Veepee.
vpTech souhaitait ainsi trouver un moyen de moderniser son infrastructure d'ingénierie et d'adopter l'approche inner source. Dans le même temps, la direction générale tenait à conserver le code et les instances en interne et à ne pas recourir au cloud pour l'instant. Les équipes de développement quant à elles, exigeaient notamment l'adoption des pratiques CI.
vpTech a choisi de renouveler entièrement ses équipements et son workflow afin de moderniser les outils d'ingénierie de l'entreprise et ainsi permettre aux équipes de travailler dans un environnement unique, à l'aide de trousses à outils et de méthodologies communes. Après avoir mené ses recherches, vpTech a porté son choix sur GitLab. « Il y a trois ans, la grosse différence entre GitLab et GitHub était l'outil CI natif. C'est un élément dont nous avions vraiment besoin chez Veepee », a déclaré Millet.
L'équipe a adopté GitLab assez rapidement. Au départ, l'objectif était de démarrer avec 300 licences sur une période de trois ans. Cependant, les développeurs ont tellement apprécié la plateforme qu'ils en ont demandé davantage dès les six premiers mois. Si bien qu'en un an, vpTech comptait déjà plus de 1 000 licences.
vpTech s'est alors lancé dans de nouvelles initiatives côté technologie et déploiement. La première consistait à faire en sorte que les développeurs passent à GitLab et abandonnent totalement le workflow précédent. La seconde consistait à expliquer et à diffuser la philosophie inner source : si vous avez besoin de quelque chose, contribuez. La troisième était de s'assurer que lors d'un déploiement en production, les tests aient lieu dans le pipeline GitLab CI pour plus de visibilité.
Le workflow de l'équipe ingénierie et produit a été considérablement amélioré. Afin de modifier un formulaire sur le site web, ou d'introduire un nouveau test A/B, il suffit désormais à l'équipe de publier le code. Si le test est concluant, elle peut le déployer en production. « Avant GitLab, un déploiement en production pouvait prendre jusqu'à quatre jours car cela nécessitait l'implication de nombreuses personnes. Maintenant, cela prend quelques minutes sans la moindre intervention humaine. C'est entièrement automatique », confie M. Millet.
La technologie et le processus de déploiement avec GitLab CI sont du ressort de l'équipe produit, qui a donc le choix de la méthode de déploiement. « Nous avons produit le dernier composant du CI, la partie déploiement. Nous avons mis au point des outils destinés aux ingénieurs qui, après exécution automatique du déploiement bleu/vert, leur permettent de réaliser tous les tests nécessaires via le déploiement canari. Si c'est validé, c'est déployé en production. Voilà le workflow principal », ajoute M. Millet.
L'équipe SRE a produit de nombreux modèles CI, constituant ainsi une base de connaissances pour les équipes. Lorsque de nouveaux développeurs arrivent dans l'entreprise, ils peuvent facilement consulter les modèles avant de se lancer. « Nous disposons de jeux de "linter" pour tous les langages pré-établis par l'équipe SRE. En gros, il suffit de choisir le premier composant. Ensuite, pour le test, vous insérez votre propre code dans la mesure où vous savez ce que vous avez fait. La partie test est donc du ressort de votre équipe », explique M. Millet. Le déploiement est modélisé pour Nomad ou Kubernetes en vue de la mise en production.
Au cours des trois dernières années depuis l'adoption de GitLab, M. Millet n'a jamais reçu la moindre plainte concernant la plateforme. GitLab a considérablement changé la culture d'une entreprise vieille de 16 ans en optimisant la transparence, le workflow et le temps consacré au développement. « L'adoption de GitLab a pris près d'un an car cela impliquait un changement d'habitudes, un changement de méthode de travail. Maintenant, cela fonctionne très bien. À l'heure actuelle, nous avons mis au point un outil appelé DevHub qui vient s'ajouter à GitLab pour établir des statistiques et donner une vue complète à l'équipe de direction », conclut M. Millet.