Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Roger Boesch Developer Technical Specialist Developer and Platform Group.

Ähnliche Präsentationen


Präsentation zum Thema: "Roger Boesch Developer Technical Specialist Developer and Platform Group."—  Präsentation transkript:

1 Roger Boesch Developer Technical Specialist Developer and Platform Group

2 Was ist Build Automation? Team Foundation Server Build Build Execution Build Architektur Continuous Integration Demo Build Customization Build Definitionen Targets and Tasks Build API Demo

3

4 CollectingAssemblingValidatingAuditing

5 Wird aus unseren Bits auch ein Produkt? Sind wir im Zeitplan? Ist die Produkt-Qualität gut? Build Automation macht es einfach, den Puls im Team zu messen!

6 Build Automation in Visual Studio Team System

7 Offizielle Bezeichnung Visual Studio 2008 Team Foundation Server Build Core Feature von TFS (Kein Zusatzprodukt) Umfassende, in TFS integrierte Build Automation Bietet F5-Experience fürs ganze Team Team Build benutzt MSBuild Engine Team Build besteht aus MSBuild Tasks für Team System Komponenten (Testing, Code Churn, Work Items Update etc.) MSBuild Project File Erstellung im GUI Definition der Build Optionen

8 Build Initiated from TFS Prepare build agent and create build number Sync Sources Compile and Analyze Execute Tests Update Work Items Calculate Code Coverage Calculate Code Churn Produce Build Report Copy to Drop Publish Results to TFS Notify Event Subscribers BuildDefinition \ TFSBuild.proj

9 Team Foundation Server Build Agent msbuild.exe BuildDefinition\ TFSBuild.proj BuildDefinition\ TFSBuild.proj msbuildm.exe SolutionA.sln Calls Compiles Runs

10 Power Tools submits processes raises handles queries queues receives servicesstarts raises handles polls notifies Build Service Version Control Service Build Agent Notification Application Check-in Event Build Completion Event Build Build Queue Build Definitions Changeset Database Developer

11 Roger Boesch Developer Technical Specialist Developer and Platform Group

12 Build Customization

13 Core Build wird in TfsBuild.proj definiert Check-out um den Build anzupassen Targets Gruppieren einzelne Tasks und definieren die Reihenfolge Erlaubt es einzelne Bereiche aus der Kommandozeile aufzurufen Tasks Tasks definieren Operationen, die in einzelnen Managed Assemblies liegen Stellen den Code zur Verfügung, der während des Build Eigene Tasks können erstellt werden Implementieren von ITask Ableiten von der Helper Class Task

14 Zugriff auf die selbe API wie Team Build Erlaubt die volle Automatiserbarkeit der UI- Funktionen und mehr... Gute Basis zur Integration von bestehenden Build Systemen (Nant, Ant, make etc.) in Team Build

15 Properties um den Build zu kontrollieren Build Targets die überschrieben werden können IncrementalGetStopOnFirstFailure IncrementalBuildCleanCompilationOutputOnly SkipWorkItemCreationUpdateAssociatedWorkItemsOnBuildBreak SkipLabelSkipGetChangesetsUpdateWorkItems BeforeOnBuildBreakBuildNumberOverideTarget BeforeCompileBeforeEndToEndIteration BeforeTestAfterEndToEndIteration PackageBinariesBefore/After everything!

16 C# TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(http://tfsserver:8080); IBuildServer buildServer = (IBuildServer)tfs.GetService(typeof(IBuildServer)); IBuildDefinition buildDef = buildServer.GetBuildDefinition("TeamProject", "Build Name"); buildServer.QueueBuild(buildDef); VB.NET Dim tfs As TeamFoundationServer = TeamFoundationServerFactory.GetServer("http://tfsserver:8080") Dim buildServer As IBuildServer = DirectCast(tfs.GetService(GetType(IBuildServer)), IBuildServer) Dim buildDef As IBuildDefinition = buildServer.GetBuildDefinition("TeamProject", Build Name") buildServer.QueueBuild(buildDef)

17 Roger Boesch Developer Technical Specialist Developer and Platform Group

18 MSDN Help Understanding Team Foundation Build Configuration Files http://msdn2.microsoft.com/en-us/library/ms400710(VS.90).aspx Microsoft.TeamFoundation.Build.targets file %ProgramFiles%\MSBuild\Microsoft\VisualStudio\TeamBuild\ Microsoft.TeamFoundation.Build.targets !! DIESE DATEI NIEMALS EDITIEREN !! Viele Angepasste Tasks sind bereits verfügbar – Suchen bevor man selber zu programmieren beginnt

19 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Herunterladen ppt "Roger Boesch Developer Technical Specialist Developer and Platform Group."

Ähnliche Präsentationen


Google-Anzeigen