Articles

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

En utilisant Microsoft TFS 2015 Update 3 pour.NET (Build, Test and Deploy)

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.

1 Configuration d'une application C#

2 créer un projet d'équipe

3 Configuration d'une application C# - sélectionnez un modèle

4 Configuration d'une Application C# - Spécifier le contrôle de source

5 Configuration d'un paramètre de projet d'équipe d'application C#

6 Configuration d'une création de projet d'équipe d'application C#

7 Configuration d'une application C# - création d'un nouveau projet d'équipe.1

Lancez l’interface Web TFS en utilisant l’URL http://<ServerName>:port/tfs et vous pouvez voir le projet créé.

8. Projets et équipes

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)

12. Mon projet TFS.1

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.

Lancement visuel Studio.NET

2) Allez dans View=>Explorateur d’équipe et connectez-vous au serveur TFS à l’aide de l’icône 16connectez-vous au serveur TFS

17View-Explorateur d'équipe

3) Créez un C # ASP.Projet Web NET

19créer un C # ASP.NET Projet web

21 Créer un C # ASP.NET Projet Web

4) Puisque nous créons une application Web, Sélectionnez le modèle de formulaires Web

23 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

25 le projet créé peut être visualisé dans l'Explorateur de solutions

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

27fichier par défaut.aspx

Sélectionnez la vue de conception et vous pourrez voir la page entière

29 Vue de conception

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 »

31ajouter une solution au contrôle de source

8) Sélectionnez le Projet d’équipe créé précédemment, puis cliquez sur OK

33 Sélectionnez le projet d'équipe

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.

35 explorateur de contrôle de source

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.

37 Enregistrement

39 Modifications en attente

41drag- déposer un élément de travail de LA TÂCHE pour assurer la traçabilité

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.

43 Cliquez sur l'icône Firefox dans Visual Studio.NET

site Web

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.

47 site web fonctionnant localement

Sélectionnez le projet de l’équipe et cliquez sur Créer

49créez une construction

Cliquez sur Modifier, qui se trouve à côté de la définition vide

51cliquez sur Edit

Enregistrez la définition de build comme quelque chose comme ‘Main Build’

53enregistrez la définition de 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.

55ajouter l'étape d'analyse de fin

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’

57 Nouveau Point de terminaison de service - Générique

59 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

61 Sélectionnez le point de terminaison

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 >

63enregistrez la définition de construction

Analyse SonarQube–End. Terminez l’analyse, puis téléchargez les résultats dans le projet SonarQube.

65SonarQube–End Analysis

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.

67 Publier des artefacts sur le serveur

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.

69 Installez l'agent sur la machine de génération et de déploiement

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.

71 Le plugin SonarQube SCM TFVC est téléchargé

4)Une fois le plugin téléchargé et copié, Lancez le serveur sonar

73 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’

75Queue Build

Build Réussi. Toutes les étapes se sont bien déroulées.

77construire avec succès. 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.

79 Build 217 - Onglet Artefacts

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.

81wwwroot directory

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.

83 Release hub et Créez une définition de Release

Commencez par une définition vide et cliquez sur OK.

85 Définition vide

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.

87 Enregistrez la définition de version

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.

89 Lien vers une définition de build

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

91 Activez la Condition de déploiement

93 lancez la deployment

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.

95 activer le déclencheur de déploiement

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.

97ajoutez une tâche pour copier des fichiers à partir du dossier 'drop'

99 IIS wwwrootdirectory

Dossier source – Parcourez et sélectionnez le projet Webapplication1 dans le dossier drop

101sélectionnez le dossier cible Webapplication1

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

103 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.

105dernière version stable

Le déploiement est réussi vers l’environnement d’assurance qualité

107dé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.

109se connecter à l'application web déployée

111l'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