CI/CD
Pour des déploiements fiables et rapides
L'acronyme CI/CD signifie Intégration Continue (Continuous Integration) et Déploiement Continu (Continuous Deployment/Delivery). C'est une pratique essentielle du développement logiciel moderne qui vise à automatiser les étapes de construction, de test et de mise en production des applications.
- Intégration Continue (CI) : Les développeurs et développeuses fusionnent leur code fréquemment (plusieurs fois par jour) dans un dépôt centralisé. Chaque fusion déclenche une construction automatisée et une série de tests pour détecter les régressions ou bugs le plus tôt possible.
- Déploiement Continu (CD) : Une fois que le code a passé avec succès les tests de la CI, il est automatiquement déployé en production. La Livraison Continue (Continuous Delivery) est une variante où le déploiement en production nécessite une validation manuelle.
Pourquoi est-ce que cela profite à tout le monde ?
Fiabilité accrue
L'automatisation des tests et des déploiements réduit les erreurs humaines, permettant de consacrer ce temps à perfectionner le code.
Mises en production plus rapides
Les nouvelles fonctionnalités et les correctifs sont livrés aux utilisateurs plus fréquemment avec moins d'interruptions de service.
Productivité des équipes
Les développeurs et développeuses peuvent se concentrer sur l'écriture de code de qualité plutôt que sur les processus manuels et répétitifs de déploiement.
Qualité du code améliorée
Les retours rapides des tests et déploiements incitent à produire un code plus propre et plus robuste.
Notre démarche CI/CD
Chez Alsacréations, le processus de CI/CD fait partie de nos projets les plus ambitieux. Nous mettons en place des pipelines sur mesure pour chaque projet, en nous appuyant sur des outils éprouvés.
- Gestion de version avec Git : Tout notre code est versionné avec Git, proprement, en suivant des stratégies de branches claires pour un travail d'équipe organisé. Il peut s'agir de projets menés en interne ou en collaboration avec d'autres équipes, dont les vôtres.
- Pipelines automatisés avec GitLab CI/CD : Nous utilisons principalement GitLab et GitHub Actions pour définir nos pipelines. Chaque modification du code ou fusion sur une branche peut déclencher des étapes de validation (linting, tests unitaires, tests d'intégration) et de compilation.
- Déploiements : Nous concevons nos déploiements pour qu'ils se fassent sans longue interruption de service pour les utilisateurs finaux, garantissant une disponibilité maximale.
- Environnements de pré-production : Avant la mise en production, les modifications sont déployées sur un environnement de recette ou de pré-production, permettant une dernière validation en conditions quasi-réelles.
Ce site, que vous êtes en train de consulter, est aussi publié et modifié régulièrement grâce à un workflow CI/CD.