Tutoriel : configurer CI/CD pour une application Service Fabric en utilisant Azure Pipelines
Ce tutoriel est la quatrième partie d’une série. Il vous montre comment configurer l’intégration continue et le déploiement continu (CI/CD) pour une application Azure Service Fabric en utilisant Azure Pipelines. Pour suivre le tutoriel, vous devez disposer d’une application Service Fabric existante. Ce tutoriel utilise l’application décrite dans la première partie de la série de tutoriels.
Dans ce tutoriel, vous allez apprendre à :
- Ajouter le contrôle de code source à votre projet
- Créer un pipeline de build dans Azure Pipelines
- Créer un pipeline de mise en production dans Azure Pipelines
- Déployer et mettre à niveau une application automatiquement
La série de tutoriels vous montre comment :
- Créer une application .NET Service Fabric
- Déployer l’application sur un cluster distant
- Ajouter un point de terminaison HTTPS à un service frontal ASP.NET Core
- Configurer CI/CD en utilisant Azure Pipelines (ce tutoriel)
- Configurer la surveillance et les diagnostics pour l’application
Prérequis
Avant de commencer ce tutoriel :
- Si vous n’avez pas d’abonnement Azure, créez un compte gratuit.
- Installez Visual Studio 2019, incluant la charge de travail de développement Azure et la charge de travail de développement ASP.NET et web.
- Installez le Kit de développement logiciel (SDK) Service Fabric.
- Créez un cluster Windows Service Fabric sur Azure, par exemple en suivant ce tutoriel.
- Créez une Organisation Azure DevOps pour pouvoir créer un projet dans Azure DevOps et utiliser Azure Pipelines.
Télécharger l’exemple d’application de vote
Si vous n’avez pas créé l’exemple d’application de vote lors de la première partie de cette série, vous pouvez le télécharger. Dans une fenêtre Commande, exécutez la commande suivante pour cloner le référentiel de l’exemple d’application sur votre ordinateur local.
git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart
Préparer un profil de publication
Maintenant que vous avez créé une application et déployé l’application dans Azure, vous êtes prêt à configurer l’intégration continue. Tout d’abord, préparez au sein de votre application un profil de publication destiné au processus de déploiement qui s’exécute dans Azure Pipelines. Le profil de publication doit être configuré pour cibler le cluster que vous avez précédemment créé. Démarrez Visual Studio et ouvrez un projet d’application Service Fabric existant. Dans Explorateur de solutions, faites un clic droit sur l’application et sélectionnez Publier.
Choisissez un profil cible dans votre projet d’application à utiliser pour votre flux de travail d’intégration continue, par exemple, Cloud. Spécifiez le point de terminaison de connexion du cluster. Cochez la case Mettre à niveau l’application pour que votre application se mette à niveau pour chaque déploiement dans Azure DevOps. Sélectionnez le lien Enregistrer le profil pour enregistrer les paramètres dans le profil de publication, puis sélectionnez Annuler pour fermer le dialogue.
Partager votre solution Visual Studio dans un nouveau référentiel Git Azure DevOps
Partagez les fichiers source de votre application sur un projet dans Azure DevOps pour pouvoir générer des builds.
Pour créer un référentiel GitHub et un référentiel Azure DevOps dans Visual Studio 2022, sélectionnez Git>Créer référentiel Git dans le menu Git.
Sélectionnez votre compte et entrez le nom de votre référentiel. Sélectionnez Créer et faire un push.
La publication du référentiel génère un nouveau projet dans votre compte Azure DevOps Services, qui porte le même nom que le référentiel local.
Pour afficher le référentiel nouvellement créé, accédez à https://dev.azure.com/><organizationname>
. Pointez sur le nom de votre projet et sélectionnez l’icône Référentiels.
Configurer la livraison continue en utilisant Azure Pipelines
Un pipeline de build Azure Pipelines décrit un flux de travail qui possède un ensemble d’étapes de build exécutées séquentiellement. Pour effectuer un déploiement sur un cluster Service Fabric, créez un pipeline de build qui produit un package d’application Service Fabric et d’autres artefacts. En savoir plus sur les pipelines de build Azure Pipelines.
Un pipeline de mise en production Azure Pipelines décrit un flux de travail qui déploie un package d’application sur un cluster. Lorsqu’ils sont utilisés ensemble, le pipeline de build et le pipeline de mise en production exécutent le flux de travail dans son ensemble, en commençant par les fichiers source et en terminant par une application fonctionnelle dans votre cluster. Apprenez-en davantage sur les pipelines de mise en production Azure Pipelines.
Créer un pipeline de build
Ouvrez un navigateur web et accédez à votre nouveau projet à l’adresse https://dev.azure.com/<organization-name>/VotingSample
.
Sélectionnez l’onglet Pipelines , puis sélectionnez Créer un pipeline.
Sélectionnez Utiliser l’éditeur classique pour créer un pipeline sans utiliser YAML.
Comme source, sélectionnez Azure Repos Git. Pour Projet d’équipe, sélectionnez VotingSample. Pour Référentiel, sélectionnez VotingApplication. Laissez la branche par défaut pour les builds manuelles et planifiées. Sélectionnez Continuer.
Dans Sélectionner un modèle, sélectionnez le modèle Application Azure Service Fabric, puis sélectionnez Appliquer.
Dans Tâches, pour Pool d’agents, entrez Azure Pipelines. Pour Spécification de l’agent, entrez windows-2022.
Sous Déclencheurs, cochez la case Activer l’intégration continue. Dans Filtres de branche, la Spécification de branche est définie par défaut sur maître. Sélectionnez Enregistrer et mettre en file d’attente pour lancer une build manuellement.
Les builds sont également déclenchées par envoi (push) ou par archivage. Pour vérifier la progression de votre build, sélectionnez l’onglet Builds. Après avoir vérifié que la build s’exécute correctement, définissez un pipeline de mise en production qui déploie votre application sur un cluster.
Créer un pipeline de mise en production
Sélectionnez l’onglet Pipelines, puis sélectionnez Mises en production>Nouveau pipeline. Sur Sélectionner un modèle, sélectionnez le modèle Déploiement Azure Service Fabric, puis sélectionnez Appliquer.
Sélectionnez Tâches>Nouvelle pour ajouter une nouvelle connexion de cluster.
Sur Nouvelle connexion Service Fabric, sélectionnez l’authentification Basée sur les certificats ou Informations d'identification Microsoft Entra. Spécifiez un point de terminaison de cluster tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000
(ou le point de terminaison du cluster sur lequel vous effectuez le déploiement).
Pour l’authentification basée sur les certificats, ajoutez l’empreinte du certificat de serveur utilisé pour créer le cluster. Dans Certificat client, ajoutez le codage en base 64 du fichier de certificat client. Consultez les informations d’aide de ce champ pour savoir comment obtenir cette représentation codée en base 64 du certificat. Ajoutez également le mot de passe du certificat. Vous pouvez utiliser le certificat de serveur ou de cluster si vous n’avez pas de certificat client distinct.
Pour les informations d’identification Microsoft Entra, ajoutez une valeur pour Empreinte du certificat de serveur. Utilisez le certificat de serveur que vous avez utilisé pour créer le cluster et les informations d’identification que vous voulez utiliser pour vous connecter au cluster dans Nom d’utilisateur et Mot de passe.
Cliquez sur Enregistrer.
Ensuite, ajoutez un artefact de build au pipeline afin que le pipeline de mise en production puisse trouver la sortie de la build. Sélectionnez Pipeline>Artefacts>Ajouter. Dans Source (définition de build), sélectionnez le pipeline de build que vous avez créé plus tôt. Cliquez sur Ajouter pour enregistrer l’artefact de la build.
Activez un déclencheur de déploiement continu afin qu’une mise en production soit créée automatiquement à la fin de la build. Cliquez sur l’icône en forme d’éclair dans l’artefact, activez le déclencheur, et sélectionnez Enregistrer pour enregistrer le pipeline de mise en production.
Sélectionnez Créer une mise en production>Créer pour créer manuellement une mise en production. Pour analyser la progression de la mise en production, sélectionnez l’onglet Mises en production.
Vérifiez que le déploiement a réussi et que l’application est en cours d’exécution dans le cluster. Ouvrez un navigateur web et accédez à https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. Notez la version de l’application. Dans cet exemple, il s’agit de 1.0.0.20170616.3
.
Valider et envoyer les modifications pour déclencher une mise en production
Pour vérifier que le pipeline d’intégration continue fonctionne, vérifiez certaines modifications de code apportées à Azure DevOps.
Lorsque vous écrivez votre code, Visual Studio effectue un suivi des modifications de fichier apportées à votre projet dans la section Modifications du volet Modifications Git.
Sur Modifications, entrez un message pour décrire votre mise à jour, puis validez vos modifications.
Dans Modifications Git, sélectionnez Push (flèche vers le haut) pour mettre à jour votre code dans Azure Pipelines.
L’envoi (push) des modifications à Azure Pipelines déclenche une build. Pour vérifier la progression de votre build, sélectionnez l’onglet Pipelines dans l’application sur https://dev.azure.com/organizationname/VotingSample
.
Une fois que la build a fini, une mise en production est créée automatiquement et commence la mise à niveau de l’application sur le cluster.
Vérifiez que le déploiement a réussi et que l’application est en cours d’exécution dans le cluster. Ouvrez un navigateur web et accédez à https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. Notez la version de l’application. Dans cet exemple, il s’agit de 1.0.0.20170815.3
.
Mettre à jour l’application
Apportez des modifications au code de l’application. Enregistrez et validez les modifications.
Quand la mise à niveau de l’application commence, vous pouvez suivre la progression dans Service Fabric Explorer :
La mise à niveau de l’application peut prendre plusieurs minutes. Une fois la mise à niveau terminée, l’application exécute la version suivante. Dans cet exemple, il exécute la version 1.0.0.20170815.4
.
Étape suivante
Passez au tutoriel suivant :