[Actualité] DevOps avec Azure - partie 7 : à la découverte de l’extension « Continuous Delivery Tools for Visual Studio »
par
, 07/03/2018 à 02h57 (5039 Affichages)
Ce billet est le septième de ma série consacrée à DevOps avec la plateforme Cloud Microsoft Azure.
DevOps sur Microsoft Azure – Partie 1 : Introduction à DevOps
DevOps avec Azure – partie 2 : Infrastructure as Code (IaC) avec Azure ARM
DevOps avec Azure – Partie 3 : Création et déploiement des ressources avec Visual Studio et ARM Template
DevOPS avec Azure – Partie 4 : ARM Template CI & CD avec VSTS
DevOps avec Azure – Partie 5 : stratégie de CI & CD pour l’infrastructure et le Code, 1re approche
DevOps avec Azure – Partie 6 : stratégie de CI & CD pour l’infrastructure et le Code, approche 2
Dans mon précédent billet de blog, j’ai présenté comment vous pouvez mettre en place un pipeline d’intégration et livraison continues en utilisant VSTS, Azure, Azure ARM et une application ASP.NET Core. Avec cette approche, à chaque modification du code ou de l’infrastructure, le déploiement est automatiquement effectué sur Azure.
La mise en place des Builds definition, des Releases definition et autres configurations pour disposer d’un pipeline de CI et CD demande une certaine maitrise des outils utilisés. Dans son écosystème, Microsoft souhaite offrir aux développeurs des outils qui vont permettre à ceux-ci de se concentrer beaucoup plus sur la production du code de qualité. C’est dans cette optique que les développeurs de la firme ont mis en place l’extension « Continuous Delivery Tools for Visual Studio ».
Cette extension permet d’étendre les fonctionnalités de Visual Studio pour offrir aux développeurs des fonctionnalités DevOps et d’amélioration de la qualité de code. Elle permet entre autres :
- de mettre en place avec le minimum d’effort un pipeline d’intégration et livraison continues pour une application ASP.NET 4 et ASP.NET Core. L’extension permet de déployer son application Azure en ciblant de nombreux services, dont Azure Web App (Web et Linux), Azure Web App for Container ou encore Azure App Fabric. Visual Studio Team Services est utilisé comme serveur d’intégration et livraison continues ;
- d’obtenir via des notifications dans Visual Studio le résultat des builds et déploiements à chaque Push des changements apportés au code. Sans avoir besoin d’accéder à VSTS, vous pouvez savoir si un déploiement s’est effectué bien ou pas ;
- d’afficher dans un panel les résultats d’analyse du code et de la génération à chaque. Ce qui permet d’améliorer la qualité du code et corriger les éventuels problèmes avant de pousser ses modifications et enclencher le pipeline de CI et CD;
- d’afficher une notification dès lors qu’une tâche vous a été assignée dans VSTS.
Installation de l’extension
L’installation de l’extension se fait via la galerie d’extensions de Visual Studio. Pour y accéder, vous devez aller dans le menu Outils, puis cliquer sur Extensions et Mises à Jour. Ensuite, effectuer une recherche en utilisant les mots « Continuous Delivery Tools ».
Il faut noter que cette extension supporte uniquement Visual Studio 2017 et versions supérieures.
Mise en place du pipeline de CD & CI pour une application ASP.NET Core
Pour mettre en place un pipeline de CI & CD pour votre application ASP.NET Core, cette dernière doit utiliser un Repository Git. Si ce n’est pas le cas, le bouton « Add to Source Control » dans la barre de statut de l’extension va vous permettre de rapidement ajouter votre code source au gestionnaire de version Git et pousser vos modifications sur Visual Studio Team Services.
Pour accéder à l’interface de CI & CD de votre application, faites un clic droit sur votre solution dans l’explorateur de solution, ensuite cliquez sur « Configure Continuous Delivery to Azure… » :
À partir de votre compte Microsoft et VSTS, les informations seront récupérées sur votre abonnement Azure, votre repository et la branche utilisée.
L’extension propose par défaut la création d’un nouvel Azure App Service. Si vous avez un App Service existant sur Azure, vous pouvez dérouler et sectionner ce dernier. Vous pouvez cliquer sur Edit pour modifier le nom de l’App Service, la localisation, le nom du groupe de ressources, du Service Plan et la taille du Service Plan.
Si tout est correct pour vous, cliquez sur Ok.
L’extension va procéder à la création du groupe de ressources et des services nécessaires sur Azure. La Build et la Release definition seront créées sur VSTS. Une nouvelle opération de génération et de déploiement de l’application sur Azure sera automatiquement lancée.
Vous pouvez accéder à votre compte VSTS pour apprécier les configurations qui ont été faites pour vous :
L’extension « Continuous Delivery Tools for Visual Studio » est un excellent outil pour rapidement mettre en place un pipeline de CI & CD, sans avoir des connaissances poussées des services utilisés. Vous pouvez plus tard personnaliser la configuration qui a été faite en ajoutant des tâches supplémentaires ou des environnements additionnels (staging, prod, etc.)
On va regretter toutefois que ce dernier soit disponible uniquement pour les projets ASP.NET et cible uniquement des services Microsoft, dont Azure et VSTS.