Allgemein Für Administratoren Für Architekten Für Entwickler Für Projektleiter Für Tester News Produkte Publikationen
X
Michael Ring

Michael Ring

Team Foundation Service: Generierung von Setup Projekten in der Cloud

Freitag, 05. Oktober 2012

Die Generierung von Setup Paketen ist inzwischen ein fester Schritt in Vorbereitung auf das Release einer neuen Software Version. Für die Erstellung von Setup Paketen wird häufig Install Shield oder Windows Installer XML verwendet.

Für die Erzeugung von Setup Paketen mittels Windows Installer XML muss im Falle einer TFS On-Premise Installation nur das Windows Installer XML Setup auf allen Build Agenten der Build Infrastruktur ausgeführt werden. Bei Team Foundation Service stellt Microsoft sowohl die Team Foundation Service Instanz als auch die Build Infrastruktur in Form eines Hosted Build Controllers bereit.  Eine Modifikation der Build Infrastruktur in Form einer Software Installation auf den Build Agenten ist dabei nicht möglich.

Um die Erstellung von Setup Paketen auf Basis von Windows Installer XML (WiX) dennoch zu ermöglichen, sind die folgenden drei Schritte nötig:

  1. Ablage der WiX Komponenten im Source Control
  2. Definition der WiX Tool Umgebung in der Build Definition
  3. Deaktivierung der ICE Validierung

Als erster Schritt müssen die WiX Komponenten in der TFS-Versionsverwaltung abgelegt werden, da auf den von Microsoft bereitgestellten Hosted Build Controller und den Build Agents keine Software installiert werden kann. Unsere Empfehlung ist die WiX Komponenten separat vom Source Code in einem dedizierten Tools Verzeichnis abzulegen (siehe Abbildung 1).

Abgelegte WIX Komponenten im Source Control

Abbildung 1 - Abgelegte WiX Komponenten im Source Control

Als zweiter Schritt müssen die Einstellungen für die Erstellung der Setup Pakete durch MSBuild angepasst werden. MSBuild werden hierzu die folgenden zusätzlichen Parameter übergeben:

/p:WiXTargetsPath=..\..\..\Tools\WIX3.6\wix.targets;WixTasksPath=WiXTasks.dll;WixToolPath=..\..\..\Tools\WIX3.6;WixExtDir=..\..\..\Tools\WIX3.6

Diese Parameter können über den MSBuild Arguments Parameter im Process Tab der Build Definition angegeben werden (siehe auch Abbildung 2).

Definition der zusätzlichen MSBuild Parameter in der Build Definition

Abbildung 2 - Definition der zusätzlichen MSBuild Parameter in der Build Definition

Im letzten Schritt muss zusätzlich noch die ICE  Validierung in den Setup Projekten deaktiviert werden, da auf der gehosteten Build Infrastruktur kein Zugriff auf den Windows Installer Service besteht (siehe Abbildung 3).

Einstellung zur Deaktivierung der ICE Validierung

Abbildung 3 - Einstellung zur Deaktivierung der ICE Validierung

Fazit

Mit Windows Installer XML können auch auf einem Hosted Build Controller Setup Pakete für im Team Foundation Service entwickelte Produkte erfolgreich erzeugt werden.

Erfolgreicher Build eines Setup Pakets durch den Hosted Build Controller

Erfolgreicher Build eines Setup Pakets durch den Hosted Build Controller

Verwandte Artikel:

Benötigen Sie Unterstützung bei der Software-Entwicklung und Architektur von .NET basierten Lösungen oder bei Einführung und Anpassung von Visual Studio / Microsoft Test Manager / Team Foundation Server?

Wir stehen Ihnen unter info(at)aitgmbh.de gerne zur Verfügung.

Tags: , , , ,

Hinterlasse eine Antwort