+

Radio France déploie 5 fois plus rapidement avec GitLab CI/CD

  • Efficacité améliorée
  • Déploiements plus rapides
  • Économies annuelles
IndustryTélécommunications
Employés5 000
EmplacementParis, France

Vous souhaitez découvrir ce que GitLab Ultimate peut offrir à votre équipe ?

Commencer votre essai gratuit

Radio France a adopté GitLab CI pour minimiser les changements de contexte et accélérer ses déploiements.

Radio France est passée à GitLab CI/CD après avoir testé avec succès la gestion de code.

C'était notre objectif principal : combiner plusieurs outils en un seul et faciliter le déploiement en production pour les équipes de développement. Nous étions à 10 par jour avant la migration. Maintenant, avec GitLab, nous effectuons 50 déploiements par jour en production, ce qui est bien plus efficace, car nous n'avons plus à basculer entre GitLab et Jenkins.

- Julien Vey, Operational Excellence Manager, Radio France
Société nationale de radiodiffusion française

Radio France est la société nationale de radiodiffusion française, et compte sept stations dans tout le pays. Radio France conçoit, développe et exploite des sites web, des applications mobiles, des API, des podcasts, des assistants vocaux et des plateformes de streaming audio.

Problèmes de configuration et changements de contexte

Radio France utilisait GitLab pour Git et Jenkins pour les compilations en production, les images de produits et tous les déploiements. Les équipes de développement devaient constamment basculer entre GitLab pour le code source et Jenkins pour toutes les compilations en production. Les équipes de Radio France souhaitaient fusionner les deux technologies afin d'éviter les changements de contexte constants. Idéalement, elles voulaient une solution unique qui pouvait être utilisée pour la gestion de code et le déploiement.

Jenkins présentait également des problèmes de configuration. Tous les jobs étaient configurés par l'équipe CI/CD, ce qui empêchait les développeurs d'apporter des modifications aux déploiements en production. Les équipes souhaitaient en effet pouvoir gérer leur propre code sans avoir à attendre les autorisations de l'équipe CI/CD.

« Nous voulions que les équipes de développement gèrent leur déploiement en production. Chaque équipe et projet a sa propre culture. Nous déployons des sites web, des API et de nombreux projets. Nous n'avons pas tous les mêmes défis », explique Julien Vey, Operational Excellence Manager.

Selon Julien Vey, le workflow est très statique dans Jenkins. Les équipes ne peuvent pas personnaliser leurs projets ni ajouter facilement de nouvelles fonctionnalités. La nouvelle solution dont ils avaient besoin devait également offrir une intégration facile, des jobs personnalisables et de nouvelles fonctionnalités sans gestion excessive.

Une solution pour la gestion de code et le CI/CD

Puisque les équipes utilisaient déjà GitLab et étaient satisfaites de la gestion du code source, elles n'ont pas eu à chercher longtemps une solution qui fournissait également une approche CI/CD. Les développeurs ont rapidement tout migré dans un pipeline GitLab afin de commencer à déployer le code en production en un seul endroit.

Radio France compte de nombreuses équipes qui travaillent sur de multiples projets différents. Chaque équipe gère son propre ensemble de services, et certaines en gèrent jusqu'à 20. Chaque service se trouve maintenant dans son propre projet GitLab.

« Nous avons simplement utilisé la partie CI/CD de GitLab parce que nous utilisions déjà la plateforme, et que tout fonctionnait parfaitement. Nos workflows sont intégrés dans les outils, de sorte que nous n'avons pas à basculer vers d'autres outils pour le déploiement. Chez GitLab, nous apprécions tout particulièrement de travailler en un seul endroit », déclare Julien Vey.

Déploiements plus rapides, collaboration améliorée

La pile technologique de Radio France comprend PHP, React, NodeJS, Svelte, Golang, RabbitMQ et PostgresQL. Toutes les applications de la société fonctionnent sur une architecture de microservices, construite sur Kubernetes. Les équipes exécutent plusieurs instances de runners GitLab, ce qui leur permet d'effectuer des mises à niveau sans interruption. GitLab est exécutée dans une machine virtuelle sur AWS, avec Terraform et Ansible pour la gestion. Les équipes utilisent Kops pour gérer les clusters Kubernetes en plus d'AWS. Elles peuvent gérer plusieurs groupes d'instances qui correspondent aux groupes de mise à l'échelle automatique d'AWS.

GitLab CI a permis à Radio France d'ajouter des tests à leurs sites web, notamment des tests lighthouse, UI et web bottle que la société ne pouvait pas implémenter jusqu'alors avec Jenkins en raison des coûts et de manque de temps.

Auparavant, les équipes utilisaient deux instances de 64G à temps plein avec des runners Jenkins, ce qui coûtait environ 1 100 $ par mois. Avec GitLab, les équipes utilisent entre une et huit instances, mais seulement pendant environ 10 heures par jour pour un coût d'environ 300 $ par mois. « Cela représente des économies de 70 % sur nos coûts CI/CD », ajoute Julien Vey.

« Avant GitLab, nous consacrions cinq ou six minutes uniquement au déploiement en production. Maintenant, quand la compilation est terminée avec GitLab, il ne faut que 20 secondes pour déployer sur n'importe quel environnement. C'est le grand avantage de GitLab », explique Julien Vey. Cette accélération a entraîné une réduction de 82 % de la durée de cycle par rapport aux déploiements précédents avec Jenkins.

Le workflow global et la collaboration ont été renforcés depuis que Radio France n'utilise plus Jenkins, car les équipes passent moins de temps à gérer la plateforme et peuvent davantage personnaliser les fonctionnalités qu'auparavant. « Le workflow était très statique dans Jenkins. Nous ne pouvions pas le personnaliser comme nous le voulions. Nous avions du mal à ajouter de nouvelles fonctionnalités », explique Julien Vey. « Désormais, avec GitLab, nous avons une immense flexibilité et nous pouvons rendre la plateforme disponible sans trop réfléchir, il suffit de la déployer pour que les nouvelles fonctionnalités puissent être utilisées. »

Chaque équipe est maintenant responsable de son propre pipeline. Les développeurs peuvent décider si, comment et quand ils veulent déployer en production. Radio France a donc implémenté tous les outils nécessaires pour que les équipes puissent prendre leurs propres décisions.

À la date de publication, toutes les informations et les personnes mentionnées dans l'étude de cas sont exactes.