L'industrialisation des déploiements : la suite logique de l'intégration continue
L’industrialisation des déploiements est la suite logique de l’intégration continue. L’implémentation de l’intégration continue dans vos activités de développement a été faite avec succès. Bravo !
Cette première étape franchie, pourquoi ne pas passer à la suite avec l’industrialisation des déploiements ?
Industrialisation des déploiements : le constat
Les déploiements, notamment en production, sont des étapes clés dans le cycle de vie d’un logiciel.
Bien souvent critiques, elles comportent de nombreux risques à différents niveaux.
Au niveau humain, où les erreurs sont courantes à cause des actions qui sont classiquement faites manuellement et de façon répétitives.
S’ajoute à cela le manque de centralisation de la documentation qui provoque des problèmes de documentation périmée ou encore incomplète.
Les actions opérationnelles peuvent être exécutées par différents acteurs entrainant des différences dans le déroulement des actions (différences dans les habitudes de travail, les compétences…).
De plus, avec les systèmes devenant de plus en plus complexe, le risque d’erreurs est fortement augmenté.
L’industrialisation des déploiements dans une démarche DevOps
L’industrialisation du cycle de vie logiciel ne se limite pas à l’intégration continue et sa fiabilisation des actions de développement.
Dans une démarche DevOps, la suite logique de l’intégration continue est l’industrialisation des déploiements qui apporte la fiabilisation de la partie opérationnelle.
L’élément central de l’industrialisation des déploiements est l’automatisation des actions (via des outils comme CFEngine, Puppet, Chef…) permettant une livraison, celles-ci étaient jusqu’à maintenant faites manuellement.
Cette automatisation va alors fiabiliser les processus de déploiement en réduisant les risques humains et ainsi pouvoir augmenter la fréquence des livraisons.
Comme pour l’intégration continue, un gestionnaire de versions (GIT par exemple) sera utilisé pour gérer les différentes versions de l’application. Cette base centralisée sera ensuite utilisée pour déployer les différentes versions sur les environnements dont la production.
Si malgré tout un bug critique apparaît lors du déploiement d’une version, un retour arrière sera aisé grâce à l’automatisation et la centralisation des versions.
L’industrialisation des déploiements passe par la garantie du respect du cycle de vie logiciel au niveau des validations et des passages d’une version dans les différents environnements (intégration, pré-production, production…).
Une journalisation des actions permettra de suivre l’évolution des versions dans les différents environnements.
Contactez-nous pour plus d’informations sur nos offres de formation
- Nos offres de services, suivez ce lien,
- Notre formation CFEngine, notre formation GIT et GitLab
Si le sujet vous intéresse nous vous invitons à notre prochain P’tit Dej’ Pro sur l’industrialisation des processus de mise en production des applications web. Vous pouvez vous pré-inscrire. Nous vous tiendrons informés dès que la date sera fixée.
Virtualisation Docker par container : pourquoi l'intégrer ? - Blog Syloé
[…] de création d’instances d’applications peut aussi être utilisée pour faciliter les déploiements d’applications en production. Ou encore pour une application « scalable », de lui allouer de nouvelles ressources lorsque la […]