© DrHitch/Shutterstock.com
TFS 2012 Team Build

7 Fallstudie: Reaktion auf Build-Ereignisse


Der Ausgang eines Team Builds kann erfolgreich sein, wenn Kompilierung und Tests fehlerfrei durchgelaufen sind. Als teilweise erfolgreich wird ein Build gewertet, bei dem die Kompilierung erfolgreich war, jedoch mindestens ein Test fehlgeschlagen ist. Ein fehlgeschlagener Build besagt, dass nicht alle Quellcodes kompilierbar waren. Jeder mögliche Ausgang eines Team Builds stellt eine wichtige Information für das Entwicklungsteam dar.

Es gibt verschiedene Möglichkeiten, sich über das Ergebnis eines Team Builds informieren zu lassen. Die einfachste Möglichkeit ist eine Benachrichtigung per E-Mail, die der TFS bereits im Auslieferungszustand beherrscht. Eine weitere Möglichkeit ist das Build Notification Tool, das zusammen mit Visual Studio installiert wird und sich im Team Foundation Server Tools-Unterordner des Visual-Studio-Ordners im Startmenü verbirgt. Diesem Tool gibt man eine Liste von Build-Definitionen, die überwacht werden sollen, für die das Tool dann Toast-Notifikationen generiert. Diese beiden Ansätze sind gut zu gebrauchen, wenn man lediglich informiert werden möchte. Wie die Funktionen zu konfigurieren sind, wurde in Abschnitt 3.3 bereits erläutert.

Ein häufiger Grund, den Ausgang von Builds zu beobachten, ist aber, entsprechende nachgelagerte Prozesse anzustoßen. So kann zum Beispiel die Erstellung eines Setups gestartet werden, Server können mit den abgelegten Komponenten aktualisiert werden oder die Erzeugung einer Dokumentation, die für den Build zu langwierig ist, soll gestartet werden. Hierzu gibt es zwei Optionen: über ein TFS-Plug-in oder einen Webdienst. Die erste Option setzt allerdings voraus, dass man Zugriff auf den Server hat, auf dem der TFS installiert ist, denn das Plug-in muss auf dem Server installiert werden. Das ist gerade in größeren Umgebungen nicht der Fall. Die Variante über einen Webdienst erfordert dies nicht: Hier muss der TFS lediglich konfiguriert werden, nach dem Ende eines Builds einen bestimmten Dienst aufzurufen. Daher ist diese Variante für Integrationsszenarien besonders hilfreich.

Im Folgenden wird beispielhaft demonstriert, wie ein solcher Webdienst aufgesetzt und der TFS so konfiguriert wird, diesen Dienst nach einem Build aufzurufen.

7.1 Den Ereignisdienst implementieren

Der TfsEventReceiver ist ein WCF-Dienst, der beim TFS registriert wird, damit der Server Build-Benachrichtigungen an diesem Dienst sendet. Dazu muss der Dienst ein bestimmtes Interface implementieren (Listing 7.1).

[ServiceContract(Nam...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang