BlogComment réduire les coûts CI/CD de 40% à 90% ?Comment réduire la consommation et les coûts CI/CD de 40% à 90% ? Cadence.CI permet de réduire significativement les coûts liés à la CI/CD grâce à des mécanismes rendus accessibles par la technologie Mélodium. Une approche multi-aspects est utilisée, et chacun de ces points peut être exploité séparément ou combiné pour améliorer l’efficacité des pipelines : délinéarisation, factorisation, asynchronisme, concentration. Délinéarisation des workflows Tout d’abord, les listes linéaires de commandes deviennent des traitements indépendants, avec une granularité allant du script complet à un unique appel de commande. Ces traitements multiples peuvent ensuite être déclenchés et exécutés dans n’importe quel ordre, de manière séquentielle ou parallèle. L’amélioration la plus courante concerne les étapes de préparation, souvent facilement parallélisables, car elles ne présentent pas de dépendances entre elles. L’installation de paquets, la récupération de caches et d’autres configurations peuvent être lancées simultanément et simplement attendues dans leur ensemble avant de démarrer les processus métiers. Dans les pipelines, on trouve aussi fréquemment des étapes de compilation dont les artefacts doivent être combinés lors d’une étape ultérieure. Pourtant, ces compilations sont souvent exécutées séquentiellement, alors qu’elles pourraient être lancées simultanément sur le même exécuteur. Factorisation des étapes On observe souvent dans les CI des pipelines adjacents exécutant les mêmes étapes, généralement via des matrices ou des templates identiques. Avec Cadence.CI, ces étapes peuvent être simplement factorisées et exécutées une seule fois avant que les tâches métiers distinctes ne se déroulent. Asynchronisme des tâches Une liste indifférenciée de commandes et d’actions conduit à une exécution impérative de tout, à chaque fois. Avec Cadence.CI, l’asynchronicité de tout ensemble de tâches est rendue possible, et ce, à n’importe quel niveau de granularité. Concentration de la charge de travail La charge de travail CI/CD est souvent répartie selon un modèle « une machine pour un pipeline ». Avec Cadence.CI, différents pipelines peuvent être concentrés sur une seule machine, tant qu’il n’y a pas besoin de ressources supplémentaires ou d’exigences spécifiques. Un ensemble de tâches réparties dans un graphe d’exécution peut être partagé entre des machines aux systèmes différents, sans nécessiter de déploiements dédiés, réduisant ainsi le nombre de machines distinctes requises. Talk France DevOps : Améliorer les performances et réduire la consommation de la CI/CD grâce à Mélodium