ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Introduction to Build in 2010
Discover, Master, InfluenceºÝºÝߣ 2Build 4.0Stephen GodboldSenior Developer, Readify
What we¡¯ll cover todayInfrastructureMSBuildTeam BuildCustomising a BuildDiscover, Master, InfluenceºÝºÝߣ 3
InfrastructureBuild 4.0Discover, Master, InfluenceºÝºÝߣ 4
InfrastructureBuild Controllers & AgentsBuild DetailsDiscover, Master, InfluenceºÝºÝߣ 5
InfrastructureDiscover, Master, InfluenceºÝºÝߣ 6
MSBuildBuild 4.0Discover, Master, InfluenceºÝºÝߣ 7
MSBuildExtensibilityProperty FunctionsInline TasksBefore and After Targets	Discover, Master, InfluenceºÝºÝߣ 8
MSBuildDiscover, Master, InfluenceºÝºÝߣ 9
Team BuildBuild 4.0Discover, Master, InfluenceºÝºÝߣ 10
Team BuildWorkflow DrivenBuild Process TemplatesConfigurationDiscover, Master, InfluenceºÝºÝߣ 11
CustomisationBuild 4.0Discover, Master, InfluenceºÝºÝߣ 12
CustomisationInline TasksCustom ActivitiesExisting CustomisationsDiscover, Master, InfluenceºÝºÝߣ 13
Team Build & CustomisationDiscover, Master, InfluenceºÝºÝߣ 14
Team Build & CustomisationDiscover, Master, InfluenceºÝºÝߣ 15
More Info?Build Blogshttp://blogs.msdn.com/willbar/http://blogs.msdn.com/jimlamb/http://blogs.msdn.com/aaronhallberg/Discover, Master, InfluenceºÝºÝߣ 16
ContactDiscover, Master, InfluenceºÝºÝߣ 17@SteveGodboldhttp://seesharper.wordpress.comstephen.godbold@gmail.com
Introduction to Build in 2010

More Related Content

Introduction to Build in 2010

Editor's Notes

  • #3: I ¨C Welcome, and who I amN ¨C Understand and make best use of the new build framework in 2010T ¨C 1 hour
  • #4: Detail the changes in the new frameworkShow how to define a build with workflowDemo writing a custom activityExplain the options for extending builds in 4.0
  • #6: Controllers & AgentsScenario: Build agent is busy, CI builds start queueing... Time lapses, feedback loop expands, developer ?Controller fixes this by providing: Agent Pooling and round robin style agent selection (on free agents first, then shortest queue length) Capable of performing distribution of full builds, or parts of builds (truly parallel) Tagging of agents for preferable selection by build types (i.e. Build requiring BizTalk or Load Test etc.) Test features are now included as base install, less need for VS on build machineBuild DetailsLog updatesClickable error links that take you to the CI in source control and illustrate the errorOverview reporting for build times and healthImmediate access to quality and retention actionsBuild retention granularityAbility to retain parts of builds
  • #7: Controllers and AgentsNew Build ReportFiner grained control of build definition and process
  • #9: Object model provides extensibility points for use Multiple entry points for extensibility though the API etc. Functions that are evaluated as properties (sound like delegates?) 3 types String ¨C make use of the string methods to do things like substring on any string property Static ¨C access the static methods of some of the framework classes e.g. DateTime.Now or Guid.NewGuid()MSBuild ¨C custom property functions to provide support things like basic arithmetic, escaping and bitwise operations Registry View functions ¨C lookup reg keys. Used to do things like look for pre-req installations Support for nesting Custom Code for Tasks Inline in the build scriptSupported via a <Task> element Has provision for referencing and using functionality Support for c# and vb Supports parameters in both directions Execute custom code, without having to write a build tasks assembly, build and publish Beware of copy -> paste mentality. Sometimes a single referenced assembly of build tasks is better! Allows more fine grained control of the build process Can start a task before or after a specific build target Allows injection of post task checking, or pre task validation
  • #12: How many of you have customised your current team builds? How much do you like writing XML? Workflow driven builds Base templates providing full customisation support, and ability to define own templates Configuration greatly simplified through workflow property interfaces
  • #14: Customise a build ¨C extending from the existing customisations (build at X working in TB) What if we¡¯d like to extend outside of our proj files? Create a custom build def Create a custom composite activity Create a custom code activity