TFS-Tutorial: TFS zum Automatisieren von Build, Test und Bereitstellung für.NET-Projekte

Mit Microsoft TFS 2015 Update-3 für. NET (Erstellen, Testen und Bereitstellen): TFS-Tutorial

TFS wird häufiger für. NET-Entwicklung mit Visual Studio. NET IDE verwendet. Mit TFS 2015 Update 3 kann man sich über einen SSH-Schlüssel mit jedem Team Foundation Server Git Repo verbinden.,

Team Foundation Server (TFS) ist ein ALM-Produkt von Microsoft, das die Funktionen für eine End-to-End-Entwicklung und-Tests mit Work Item Management, Projektplanung (Wasserfall oder Scrum), Versionskontrolle, Build/Release (Bereitstellung) und Testfunktionen bietet.

HINWEIS: Dieses TFS-Tutorial enthält viele Bilder, sodass es ordnungsgemäß geladen werden kann.,

Lesen Sie auch = > TFS für JAVA-Projekte mit Eclipse in DevOps

Einführung

TFS ist für Microsoft Visual Studio und Eclipse auf allen Plattformen zugeschnitten, kann jedoch auch als Back-End für mehrere IDEs (Integrated Development Environments) verwendet werden.

Wir werden uns nun ansehen, wie Team Foundation Server (TFS) zum Erstellen, Testen und Bereitstellen von.NET-Webanwendungen verwendet wird, was traditionell die Stärke des Tools ist.

Voraussetzungen:

  • Microsoft TFS 2015 Update 3
  • Microsoft Visual Studio .,NET 2015 (30-Tage-Testversion)
  • SonarQube 6.4 oder höher
  • IIS-Webserver aktiviert. Da ich eine Windows 7-Box verwende, können Sie dieses Tutorial zum Aktivieren von IIS 7 überprüfen. So installieren Sie Internet Information Services (IIS 7) unter Windows 7 Ultimate
  • Es gibt mehrere YouTube-Videos zum Aktivieren von IIS unter Windows 2008 / 2012 / 2016.,

Um die im Lernprogramm genannten Schritte auszuführen, benötigen Sie normalerweise einen Build-Server, auf dem Builds ausgeführt werden, und Bereitstellungsmaschinen oder-umgebungen, auf denen Anwendungen auf IIS bereitgestellt werden, wobei Agenten installiert sind und ausgeführt werden. Bitte beachten Sie mein früheres Tutorial, um zu erfahren, wie Agenten installiert werden.

Einrichten einer C# – Anwendung

Vorausgesetzt, Aufgabenarbeitselemente werden in TFS erstellt und den Entwicklern zugewiesen, um an derselben zu arbeiten. Mir ist immer aufgefallen, dass die Rückverfolgbarkeit unter dem Gesichtspunkt der Verfolgung von Arbeiten über den gesamten Software-Lebenszyklus hinweg sehr wichtig ist.,

Stellen Sie vor dem Hinzufügen einer. NET-Anwendung zum TFS-Quellcodeverwaltungs-Repository sicher, ob ein Sammlungs-und Teamprojekt vorhanden ist oder nicht.

Eine Sammlung wird vom TFS-Administrator erstellt. Es besteht aus einer Gruppe von Teamprojekten in jeder Serviceorganisation, in denen Projekte für mehrere Kunden ausgeführt werden. Sie können einzelne Sammlungen für jedes Kundenprojekt in TFS erstellen.

Sobald eine Sammlung erstellt wurde, können Sie mehrere Teamprojekte darin erstellen. Ein einzelnes Teamprojekt besteht aus allen Arbeitselementen, Quellcode, Testartefakten,Metriken für Berichte usw., Das Teamprojekt kann mit verschiedenen integrierten Prozessvorlagen wie Scrum, Agile, CMMI usw. erstellt werden.

  • Weitere Informationen zum Erstellen von Sammlungen finden Sie unter Team project collections verwalten im Team Foundation Server
  • Hier verwende ich die Standardsammlung, die erstellt wird, sobald TFS installiert ist
  • Um ein Teamprojekt innerhalb einer Sammlung zu erstellen, befolgen Sie die Schritte wie unten gezeigt.

Starten Sie die TFS-Weboberfläche mit der URL http://<ServerName>:port/tfs und Sie können das erstellte Projekt sehen.,

Klicken Sie auf das Projekt und Sie gelangen zum Team Dashboard

(Hinweis: Klicken Sie auf ein Bild für vergrößerte Ansicht)

Jetzt haben wir eine Sammlung und ein Teamprojekt erstellt. Lass uns Visual starten Studio.NET erstellen Sie eine neue C# – Webanwendung und geben Sie das Projekt für das TFS-Quellcodeverwaltungs-Repository frei. Dies ist der erste Schritt zur Etablierung einer kontinuierlichen Integrationspraxis (CI).

1) Visual starten Studio.NET und legen Sie TFS als Standard-Repository für die Quellcodeverwaltung fest. Gehen Sie zu Extras => Optionen => Quellcodeverwaltung. Klicken Sie dann auf OK.,

2) Gehen Sie zu View => Team Explorer und stellen Sie mit dem Symbol eine Verbindung zum TFS-Server her

3) Erstellen Sie eine C# ASP.NET Webprojekt

4) Da wir eine Webanwendung erstellen, wählen Sie die Webformularvorlage

Klicken Sie auf OK, um das Projekt zu erstellen.

5) Das erstellte Projekt kann im Solution Explorer angezeigt werden. . NET verwendet das Konzept von .sln-Datei oder Lösung, um alle Projekte enthalten. Sobald Sie die Lösung geöffnet haben, werden auch alle zugehörigen Projekte geöffnet. Wir müssen die Lösung zum TFS Source Control Repository hinzufügen

6) Ändern Sie die Datei standardmäßig.,aspx wie gezeigt, speichern Sie es und fügen Sie dann die gesamte Lösung zum TFS-Quellcodeverwaltungs-Repository hinzu

Wählen Sie die Entwurfsansicht aus und Sie können die gesamte Seite sehen

7) Fügen Sie die Lösung zur TFS-Quellcodeverwaltung hinzu. Klicken Sie mit der rechten Maustaste auf die Lösung und wählen Sie ‚Lösung zur Quellcodeverwaltung hinzufügen‘

8) Wählen Sie das zuvor erstellte Teamprojekt aus und klicken Sie dann auf OK

9) Die Lösung ist noch nicht im TFS eingecheckt. Klicken Sie im Team Explorer auf den Source Control Explorer und Sie sehen die hinzugefügte Lösung, die eingecheckt werden soll.

10) Check-in verpasst., Gehen Sie zu Team Explorer => Ausstehende Änderungen

Geben Sie einen Kommentar ein und ziehen Sie ein Aufgabenarbeitselement per Drag & Drop, um die Rückverfolgbarkeit sicherzustellen. Klicken Sie auf die Check-in-Taste.

11) Um die lokal ausgeführte Website zu testen, klicken Sie auf das Firefox-Symbol in Visual Studio.NET. Denken Sie daran, dass es noch nicht in einer bestimmten Umgebung für IIS bereitgestellt wurde.

Erstellen einer Build-Definition mit Codeanalyse

Eine Build-Definition besteht aus einer Reihe von Aufgaben, die während eines automatisierten Build-Prozesses ausgeführt werden., Beispiele für die Aufgaben können das Ausführen eines Visual Studio-Builds, MS Build, das Ausführen von PowerShell-oder Shell-Skripten usw. sein.

1) Um eine Build-Definition zu erstellen, melden Sie sich bei der TFS-Weboberfläche an und wechseln Sie zur REGISTERKARTE Builds. Klicken Sie auf+, um eine Build-Definition zu erstellen. Beginnen Sie mit LEERER Definition und klicken Sie dann auf Weiter.,

Wählen Sie das Teamprojekt aus und klicken Sie auf Erstellen

Klicken Sie auf Bearbeiten, das sich neben der leeren Definition befindet

Speichern Sie die Build – Definition als „Haupt – Build“

Da Sonarqube für die Codeanalyse verwendet wird, fügen Sie daher die beiden Sonarschritte „SonarQube Scanner für MSBuild-Begin Analysis“ und „SonarQube Scanner für MSBuild-End Analysis“ hinzu.

Fügen Sie den Schritt Analyse beginnen vor jedem MS Build oder Visual Studio Build hinzu. Dieser Schritt ruft Details vom Sonarqube-Server ab, um die Analyse zu konfigurieren.

Hinzufügen Ende Analyse schritt später auf.,

Die hinzugefügten Schritte sehen mit dem MS Build-Schritt dazwischen wie folgt aus.

Beginnen Sie mit der Definition der Details des Sonarqube-Servers. Definieren Sie den Endpunkt, an dem die Sonarqube-Server – und Authentifizierungsdetails hinzugefügt werden. Klicken Sie auf „Verwalten“, um die Sonarqube-Serverdetails hinzuzufügen.

Klicken Sie auf ‚New Service Endpoint => Generic‘

Kehren Sie nun zum Hauptbildschirm für die Build-Definition zurück und wählen Sie den gerade erstellten Endpunkt aus.

Abgeschlossene Konfiguration für die Analyse beginnen, sieht aus wie unten gezeigt

Wählen Sie die Lösung., In der Erweiterten => Zusätzliche Einstellungen geben Sie Folgendes ein und speichern Sie die Build-Definition

/d:sonar.scm.enabled=true /d:sonar.scm.anbieter=tfvc / d: sonar.tfvc.benutzername=niranjan / d: Sonar.tfvc.Passwort.gesichert=<Passwort>

SonarQube – End-Analyse. Beenden Sie die Analyse und laden Sie die Ergebnisse in das SonarQube-Projekt hoch.

Fügen Sie einen Schritt hinzu, um Artefakte auf dem Server zu veröffentlichen. Die Artefakte werden in einem Drop-Ordner auf dem Server gespeichert und während der Bereitstellung verwendet.,

2) Installieren Sie den Agenten auf dem Build-und Bereitstellungscomputer. Sie können auf mein vorheriges Tutorial verweisen, um zu erfahren, wie der Agent installiert wird. Stellen Sie nun unter der Annahme, dass der Agent installiert ist, sicher, ob der Agent ausgeführt wird oder nicht.

3) Stellen Sie sicher, dass das SonarQube SCM TFVC-Plugin von hier heruntergeladen wird. und in das Verzeichnis SonarQube installation\extensions\plugins kopiert. Dieses Plugin stellt sicher, dass der Quellcode aus dem TFS Source Control Repository stammt und SonarQube zur Codeanalyse zur Verfügung gestellt wird.,

4) Starten Sie nach dem Herunterladen und Kopieren des Plugins den Sonarserver

5) Initiieren Sie einen Build, um zu überprüfen, ob die Schritte einwandfrei funktionieren. Öffnen Sie die Build-Definition und klicken Sie auf „Warteschlange Erstellen‘

Build Erfolgreich. Alle Schritte liefen gut.

Klicken Sie auf die Build-Nummer, in diesem Fall ist es Build-Nummer und gehen Sie zur Registerkarte Artefakte, um den auf Serverebene erstellten Drop-Ordner anzuzeigen.

Hinweis: Im nächsten Abschnitt zeigt der Release-Prozess, wie sich Änderungen im gesamten Bereitstellungsprozess widerspiegeln können., Stellen Sie dazu sicher, dass die Projektartefakte nach dem Kompilierungsschritt durch den Kopierschritt in der Build-Definition kopiert werden, oder kopieren Sie das Projektartefaktverzeichnis manuell in das C:\inetpub\wwwroot verzeichnis. Dies muss nur einmal geschehen.

Release für Deployment erstellen

Im vorherigen Abschnitt haben wir über Build gesehen, gefolgt von einer Codeanalyse mit SonarQube. Wir erstellen nun eine Version, um die Artefakte aus dem Ordner „Drop“ in IIS bereitzustellen.

Mit der Erstellung der Freigabe wird die gesamte kontinuierliche Integration und kontinuierliche Lieferung ohne manuellen Eingriff automatisiert.,

Gehen Sie zu Release hub und Erstellen Sie eine Release-Definition.

Beginnen Sie mit leerer Definition und klicken Sie auf OK.

Speichern Sie die Release-Definition und benennen Sie die Standardumgebung in QA um. Basierend auf den Projekten, zusätzliche Umgebungen wie Staging Pre-Prod usw. kann auch hinzugefügt werden und die Bereitstellung würde nacheinander auf die gesamte Umgebung automatisiert werden.

Verknüpfen Sie die Build-Definition mit der Release-Definition, damit die Bereitstellung automatisiert wird. Klicken Sie auf „Link zu einer build-definition‘. Wählen Sie die zuvor erstellte Build-Definition aus.,

Klicken Sie auf Link

Aktivieren Sie die Bereitstellungsbedingung, um die Bereitstellung unmittelbar nach der Erstellung der Version zu initiieren

Aktivieren Sie außerdem den Auslöser für die Bereitstellung, nachdem der Build erfolgreich war. Gehen Sie in der Release-Definition zur Registerkarte Trigger und aktivieren Sie „Continuous Deployment“, wählen Sie die Build-Definition aus.

Speichern Sie später die Release-Definition.

Fügen Sie auf der Registerkarte Umgebungen der Release-Definition die Aufgaben zum Bereitstellen der Artefakte auf dem IIS-Server hinzu.

Fügen Sie eine Aufgabe hinzu, um Dateien aus dem Ordner ‚drop‘, der während des Erstellungsprozesses erstellt wurde, in das IIS wwwrootdirectory zu kopieren.,

Quellordner-Durchsuchen und wählen Sie das Webapplication1-Projekt im Dropdown-Ordner

Zielordner sollte das Verzeichnis inetpub\wwwroot sein – C:\inetpub\wwwroot\WebApplication1

Release für Deployment ausführen

Erstellen Sie im Release Hub ein Release zum Starten der Deployment

Wählen Sie den letzten stabilen Build aus und klicken Sie auf Create, um die Deployment zu starten.

Die Bereitstellung ist erfolgreich für die QA-Umgebung

Führen Sie inetmgr aus, den IIS-Manager, in dem Sie alle in IIS installierten Websites / Anwendungen verwalten können. Navigieren Sie zur bereitgestellten Webanwendung.,

Abschließend Sobald Sie den Build initiieren, wird die Bereitstellung auch für alle definierten Umgebungen abgeschlossen, da die Version mit der Build-Definition verknüpft ist.

Fazit

In diesem TFS-Tutorial haben wir nun gesehen, wie Microsoft ALM Platform zur Automatisierung von Build, Test und Deployment für.NET-Anwendungen verwendet werden kann. TFS spielt hier eine große Rolle.

Daher ist AUTOMATISIERUNG in der heutigen Welt der Schlüssel für eine erfolgreiche und schnellere Lieferung, um vorne zu bleiben.

Letzte Aktualisierung: Januar 18, 2021 6:33 bin

Share

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.