Tutoriel TFS : TFS pour Automatiser la génération, le Test et le déploiement des projets .NET
Utilisation de Microsoft TFS 2015 Update-3 pour .NET (Génération, Test et déploiement) : Tutoriel TFS
TFS est plus largement utilisé pour le développement .NET à l’aide de l’E Visual Studio .NET. Avec la mise à jour 3 de TFS 2015, on peut se connecter à n’importe quel dépôt Git de Team Foundation Server, à l’aide d’une clé SSH.
Team Foundation Server (TFS) est un produit ALM de Microsoft qui fournit les capacités pour un développement et des tests de bout en bout en utilisant la Gestion des éléments de travail, la Planification de projet (Cascade ou Scrum), le Contrôle de version, la Génération / Publication (Déploiement) et les capacités de test.
REMARQUE: Ce tutoriel TFS contient de nombreuses images afin de lui permettre de se charger correctement.
Lisez également =>TFS pour les projets JAVA avec Eclipse dans DevOps
Introduction
TFS est conçu pour Microsoft Visual Studio et Eclipse sur toutes les plates-formes, cependant, il peut également être utilisé comme back-end pour plusieurs Environments (Environnements de développement intégrés).
Nous allons maintenant examiner comment Team Foundation Server (TFS) sera utilisé pour Créer, Tester et Déployer des applications Web .NET, ce qui est traditionnellement la force de l’outil.
Prérequis :
- Mise à jour 3 de Microsoft TFS 2015
- Microsoft Visual Studio .NET 2015 (version d’essai de 30 jours)
- SonarQube 6.4 ou supérieur
- Serveur Web IIS activé. Puisque j’utilise une boîte Windows 7, vous pouvez vérifier ce tutoriel sur la façon d’activer IIS 7. Comment installer Internet Information Services (IIS 7) sur Windows 7 Ultimate
- Il existe plusieurs vidéos YouTube sur la façon d’activer IIS sous Windows 2008 / 2012 / 2016 .
Généralement, pour effectuer les étapes mentionnées dans le didacticiel, vous aurez besoin d’un serveur de génération, où les versions seront effectuées, et de machines ou d’environnements de déploiement où les applications seront déployées sur IIS, avec des agents installés et en cours d’exécution. Veuillez vous référer à mon tutoriel précédent pour savoir comment installer des agents.
Configurez une application C#
En supposant que les éléments de travail de la TÂCHE sont créés dans TFS et sont affectés aux développeurs pour qu’ils y travaillent. J’ai toujours remarqué que la traçabilité est très importante du point de vue du suivi de tout travail tout au long du cycle de vie du logiciel.
Avant d’ajouter une application .NET au référentiel de contrôle de source TFS, assurez-vous qu’un projet de Collection et d’équipe existe ou non.
Une collection est créée par l’administrateur TFS. Il consiste en un groupe de projets d’équipe dans n’importe quelle organisation de service, où des projets pour plusieurs clients sont en cours d’exécution. Vous pouvez créer des collections individuelles pour chaque projet client dans TFS.
Une fois qu’une collection est créée, vous pouvez créer plusieurs projets d’équipe en son sein. Un projet d’équipe unique comprend tous les éléments de travail, le code source, les artefacts de test, les métriques pour les rapports, etc., Le projet d’équipe peut être créé à l’aide de divers modèles de processus intégrés tels que Scrum, Agile, CMMI, etc.
- Plus d’informations sur la création de collections peuvent être trouvées @Gérer les collections de projets d’équipe dans Team Foundation Server
- Ici, j’utiliserai la Collection par défaut qui est créée une fois TFS installé
- Pour créer un projet d’équipe dans une collection, suivez les étapes ci-dessous.
Lancez l’interface Web TFS en utilisant l’URL http://<ServerName>:port/tfs et vous pouvez voir le projet créé.
Cliquez sur le projet et vous accéderez au tableau de bord de l’équipe
(Remarque : Cliquez sur n’importe quelle image pour l’agrandir)
Maintenant, nous avons une collection et un projet d’équipe créés. Lançons Visual Studio.NET et créez une nouvelle application Web C# et partagez le projet avec le référentiel de contrôle de source TFS. Il s’agit de la première étape vers l’établissement d’une pratique d’intégration continue (CI).
1) Lancement visuel Studio.NET et définissez TFS comme référentiel de contrôle de source par défaut. Allez dans Tools=> Options=> Contrôle de source. Cliquez ensuite sur OK.
2) Allez dans View=>Explorateur d’équipe et connectez-vous au serveur TFS à l’aide de l’icône
3) Créez un C # ASP.Projet Web NET
4) Puisque nous créons une application Web, Sélectionnez le modèle de formulaires Web
Cliquez sur OK pour créer le projet.
5) Le projet créé peut être visualisé dans l’Explorateur de solutions. .NET utilise le concept de .fichier ou solution sln pour contenir tous les projets. Une fois la solution ouverte, tous les projets associés s’ouvriront également. Nous devons ajouter la solution au référentiel de contrôle de source TFS
6) Modifiez le fichier par défaut.aspx comme indiqué, Enregistrez-le, puis ajoutez la solution entière au référentiel de contrôle de source TFS
Sélectionnez la vue de conception et vous pourrez voir la page entière
7)Ajoutez la solution au contrôle de source TFS. Faites un clic droit sur la solution et sélectionnez » Ajouter une solution au contrôle de source »
8) Sélectionnez le Projet d’équipe créé précédemment, puis cliquez sur OK
9) La solution n’est pas encore enregistrée dans le fichier TFS . Dans l’Explorateur d’équipe, cliquez sur l’explorateur de contrôle de source et vous pouvez voir la solution ajoutée pour être enregistrée.
10) Changements d’enregistrement. Accédez à Team Explorer=>Modifications en attente
Entrez un commentaire et glissez-déposez un élément de travail de la TÂCHE pour assurer la traçabilité. Cliquez sur le bouton d’enregistrement.
11) Pour tester le site Web en cours d’exécution localement, Cliquez sur l’icône Firefox dans Visual Studio.NET . Rappelez-vous qu’il n’est pas encore déployé sur IIS sur un environnement particulier.
Création d’une définition de build avec Analyse de code
Une définition de build consiste en une série de tâches exécutées au cours d’un processus de build automatisé. Des exemples de tâches peuvent consister à exécuter une build Visual Studio, une build MS, à exécuter des scripts PowerShell ou Shell, etc.
1) Pour créer une définition de build, connectez-vous à l’interface Web TFS et accédez à l’ONGLET Builds. Cliquez sur + pour créer une définition de build. Commencez par une définition VIDE, puis cliquez sur Suivant.
Sélectionnez le projet de l’équipe et cliquez sur Créer
Cliquez sur Modifier, qui se trouve à côté de la définition vide
Enregistrez la définition de build comme quelque chose comme ‘Main Build’
Puisque Sonarqube sera utilisé pour l’analyse de code, ajoutez donc les 2 étapes du Sonar ‘Scanner SonarQube pour MSBuild–Begin Analysis’ et le ‘Scanner SonarQube pour MSBuild–End Tâches d’analyse.
Ajoutez l’étape Begin Analysis avant toute compilation MS ou Visual Studio. Cette étape récupère les détails du serveur Sonarqube pour configurer l’analyse.
Ajoutez l’étape d’analyse de fin plus tard.
Les étapes ajoutées ressembleront à ce qui suit avec l’étape de construction MS entre les deux.
Commencez à définir les détails du serveur Sonarqube. Définissez le point de terminaison où le serveur Sonarqube et les détails d’authentification sont ajoutés. Cliquez sur « Gérer » pour ajouter les détails du serveur Sonarqube.
Cliquez sur ‘Nouveau Point de terminaison de service=>Générique’
Revenez maintenant à l’écran principal de définition de la génération et sélectionnez le point de terminaison qui vient d’être créé.
Configuration terminée pour l’analyse de début, ressemble comme indiqué ci-dessous
Sélectionnez la solution. Dans les paramètres supplémentaires Avancés =>, entrez les éléments suivants et enregistrez la Définition de construction
/d:sonar.SMC.enabled = true/d: sonar.SMC.fournisseur = tfvc/d : sonar.tfvc.nom d’utilisateur = niranjan/d: sonar.tfvc.mot de passe.secured=<mot de passe >
Analyse SonarQube–End. Terminez l’analyse, puis téléchargez les résultats dans le projet SonarQube.
Ajoutez une étape pour publier des artefacts sur le serveur. Les artefacts seront stockés dans un dossier de dépôt sur le serveur et seront utilisés lors du déploiement.
2) Installez l’agent sur la machine de génération et de déploiement. Vous pouvez vous référer à mon tutoriel précédent pour savoir comment installer l’agent. En supposant maintenant que l’agent est installé, vérifiez si l’agent est en cours d’exécution ou non.
3) Assurez-vous que le plugin SonarQube SCM TFVC est téléchargé à partir d’ici. et copié dans le répertoire SonarQube installation\extensions\plugins. Ce plugin garantit que le code source est extrait du référentiel de contrôle de source TFS et est mis à la disposition de SonarQube pour l’analyse du code.
4)Une fois le plugin téléchargé et copié, Lancez le serveur sonar
5) Lancez une compilation pour vérifier si les étapes fonctionnent correctement. Ouvrez la Définition de build et cliquez sur ‘Queue Build’
Build Réussi. Toutes les étapes se sont bien déroulées.
Cliquez sur le numéro de build, dans ce cas, il s’agit de Build 217 et allez dans l’onglet Artefacts pour regarder le dossier de dépôt créé au niveau du serveur.
Remarque : Dans la section suivante, le processus de publication montre comment les modifications peuvent être reflétées tout au long du processus de déploiement. Pour cela, assurez-vous que les artefacts du projet sont copiés via l’étape de COPIE dans la définition de génération après l’étape de compilation ou copiez manuellement le répertoire d’artefacts du projet dans le C:répertoire \inetpub\wwwroot. Cela ne doit être fait qu’une seule fois.
Création de la version pour le déploiement
Dans la section précédente, nous avons vu à propos de la génération, suivie de l’analyse de code à l’aide de SonarQube. Nous allons maintenant créer une version pour déployer les artefacts du dossier ‘drop’ vers IIS.
Avec la création de Release, toute l’Intégration Continue et la Livraison Continue sont automatisées sans aucune intervention manuelle.
Accédez à Release hub et créez une définition de Release.
Commencez par une définition vide et cliquez sur OK.
Enregistrez la définition de la version et renommez l’Environnement par défaut en QA. En fonction des projets, des environnements supplémentaires tels que la pré-production, etc. peut également être ajouté et le déploiement serait automatisé dans l’ensemble des environnements les uns après les autres.
Liez la définition de génération à la définition de version afin que le déploiement soit automatisé. Cliquez sur ‘Lien vers une définition de build’. Sélectionnez la définition de build créée précédemment.
Cliquez sur le Lien
Activez la Condition de déploiement pour lancer le déploiement immédiatement après la création de la version
Activez également le déclencheur de déploiement une fois la compilation réussie. Dans la définition de version, accédez à l’onglet Déclencheur et activez « Déploiement continu », sélectionnez la définition de génération.
Enregistrez plus tard la définition de la version.
Dans l’onglet Environnements de la définition de version, ajoutez les tâches pour déployer les artefacts sur le serveur IIS.
Ajoutez une tâche pour copier les fichiers du dossier ‘drop’ créé pendant le processus de génération dans IIS wwwrootdirectory.
Dossier source – Parcourez et sélectionnez le projet Webapplication1 dans le dossier drop
doit être le répertoire inetpub\wwwroot–C:\inetpub\wwwroot\WebApplication1
Exécution de la Release pour le déploiement
Dans le centre de release, créez une release pour démarrer le déploiement
Sélectionnez la dernière version stable et cliquez sur Créer pour démarrer le déploiement.
Le déploiement est réussi vers l’environnement d’assurance qualité
Exécutez inetmgr qui est le gestionnaire d’IIS, où vous pouvez gérer tous les sites Web/applications installés sur IIS. Accédez à l’application Web déployée.
Pour conclure une fois que vous avez lancé la génération, le déploiement sera également terminé dans tous les environnements définis, car la version est liée à la définition de génération.
Conclusion
Dans ce tutoriel TFS, nous avons maintenant vu comment la plate-forme Microsoft ALM peut être utilisée pour automatiser la génération, le test et le déploiement d’applications .NET. TFS joue ici un rôle majeur.
Par conséquent, dans le monde d’aujourd’hui, l’AUTOMATISATION est la clé d’une livraison réussie et plus rapide pour rester en tête.
Dernière mise à jour : 18 février 2021