Gestion de configuration : généralités

La gestion de configuration (ou gestion de versions), par l’utilisation du source-control management (SCM) est une pierre angulaire du Continuous Delivery, c’est le référentiel à partir duquel il est possible de construire les livrables de façon reproductible et automatisée. Le SCM est également au centre du travail en équipe et nécessite, pour être efficace, la mise en place de bonnes pratiques. Les questions importantes sont de bons indicateurs sur la santé de la gestion de configuration :

  • Sommes-nous capables de recréer l’environnement de production  avec ses livrables (en excluant les données de production) à partir des éléments présents dans le SCM ?
  • Sommes-nous capables de revenir à un ancien état de bon fonctionnement de l’application ?
  • Les différents environnements (développement, recette, production) se configurent-ils de façon identique ?

En général, on stocke dans le SCM les différentes ressources qui vont faire partie intégrante du livrable : code source, ressources externes (ex : fichiers images), et code des tests. Il est crucial également de stocker les éléments suivants :

  • accès au librairies utilisées, il peut s’agir des fichiers eux-mêmes, ou de leur description précise (ex: dépendances Maven)
  • scripts de build (fichiers Makefile, POM Maven) permettant de reconstituer le livrable
  • les scripts de base de données
  • les fichiers de configuration, pour les différents environnements

Laisser un commentaire