Vous êtes-vous déjà retrouvé dans une situation où vos environnements de production et de développement sont désynchronisés ? C’est un défi courant auquel de nombreuses organisations sont confrontées. Dans cet article, nous discuterons d’un processus pour résoudre ce problème et garantir que les deux environnements sont alignés.
Le scénario
Considérons un scénario où votre environnement de production est opérationnel avec divers objets, dont certains peuvent contenir du code erroné. D’autre part, votre environnement de développement est également en cours avec plusieurs modifications en cours, dont certaines doivent être poussées en production tandis que d’autres sont encore en cours. L’objectif est d’avoir une visibilité sur l’apparence de la production et d’identifier les différences entre les deux environnements.
La solution
Il existe plusieurs façons de résoudre ce problème, mais une approche consiste à créer une liste de tâches pouvant être attribuées à d’autres personnes. Dans cet exemple, nous utiliserons SQL Compare, un outil qui permet de comparer et de synchroniser des bases de données.
Tout d’abord, nous devons sauvegarder l’environnement de développement pour nous assurer d’avoir un point de restauration. Ensuite, à l’aide de SQL Compare, nous créons un projet qui relie la production au développement. Cela nous permet de comparer les deux bases de données et d’identifier les différences.
Une fois la comparaison terminée, nous pouvons voir les modifications présentes dans les deux environnements. Certaines modifications peuvent être présentes dans un environnement mais pas dans l’autre, tandis que d’autres peuvent être différentes ou identiques. À ce stade, nous n’avons pas besoin de nous concentrer sur les détails spécifiques de chaque modification, nous pouvons donc ignorer l’expansion de la liste.
Ensuite, nous sélectionnons tous les objets et cliquons sur “Déployer” pour générer le script de déploiement. Au lieu d’exécuter immédiatement le script, nous cliquons sur l’onglet “Résumé” pour obtenir un aperçu des modifications qui seraient apportées à l’environnement de développement.
Dans le résumé, nous pouvons voir une liste globale des modifications, y compris les opérations effectuées sur chaque objet. Pour créer une liste de tâches, nous cliquons sur le bouton “Copier” dans le coin supérieur droit de l’écran et collons le contenu dans un éditeur de texte, tel que Notepad. Cette liste représente les tâches qui doivent être traitées.
À partir de là, vous pouvez prendre chaque élément de la liste de tâches et créer un ticket de travail dans votre système de gestion du travail préféré, tel que Azure DevOps Boards ou Jira. Attribuez ces tâches aux personnes appropriées qui seront responsables de les résoudre. Répétez ce processus si nécessaire jusqu’à ce que tous les objets de la production soient dans l’environnement de développement.
De plus, vous pouvez utiliser les différentes catégories de SQL Compare, telles que les modifications différentes dans les deux environnements ou les modifications présentes uniquement dans un environnement, pour générer des listes de tâches distinctes pour différents types de travail. Cela permet une meilleure organisation et priorisation des tâches.
En fin de compte, il est important d’impliquer les développeurs dans la résolution de ces problèmes car ils ont les connaissances et l’expertise nécessaires pour les gérer efficacement. En organisant le travail et en fournissant une liste claire de tâches, vous pouvez rationaliser le processus et garantir que les environnements de production et de développement sont synchronisés.
N’oubliez pas que maintenir vos environnements alignés est crucial pour maintenir un processus de développement et de déploiement fluide. En suivant une approche systématique et en utilisant des outils tels que SQL Compare, vous pouvez gérer efficacement la synchronisation de vos environnements SQL Server.