Solution: Getting Silverlight to build on Team Foundation Build Services 2010

TL;DR

Step-by-step guide to resolving build failures when compiling Silverlight 3 projects with Team Foundation Build Services 2010, including SDK, MSBuild, and code analysis fixes.

3 March 2010
Written by Martin Hinshelwood
4 minute read
Subscribe

This is SSW’s first time using Team Build 2010 to automatically create a Silverlight application. In the past the guys have used Cruse Control, but we want to move to a pure TFS 2010 solution. When one of our developers (Allan ) added a Silverlight 3 project to the Solution our build server spat it out.

clip_image001

Figure: Build SSW.SqlDeploy_20100303.8 failed when trying to build a Silverlight application.

Usually the person who broke the build should now be the one responsible for babysitting it until the next person breaks the build. In this case we had not agreed that as part of our project prep so I think I will need to wait until the retrospective at the end of our current, and first for this project, sprint.

Problem 1: First time for Silverlight compile on the Build Server.

Because Allan added the first Silverlight 3 application to the Solution the build server hiccupped as only the Silverlight 2 SDK was installed on it and it was a Silverlight 3 project. I have highlighted below where the problem was located.

image

Figure: The Silverlight targets file was not found on the build server.

I downloaded and installed the Silverlight 3 SDK from Microsoft, and hoped all would be well.

But the build failed again…

clip_image003

Figure: SSW.SqlDeploy_20100303.10 failed still trying to find targets.

Problem 2: This was due to the web targets not being installed.

At this point I got fed up and copied the contents of my local directory “C:Program Files (x86)MSBuildMicrosoftVisualStudiov10.0” to the same folder on the build server.

image

Figure: MSBuild could not find the web targets.

But the build failed again…

image

Figure: SSW.SqlDeploy_20100303.11 failed again trying to build Silverlight.

Problem 3: Can’t build Silverlight 3 projects with MSBuild 64-bit (the default)

There is a nasty bug in the Silverlight SDK that means that you can’t build using the MSBuild 64-bit process. But on a 64-bit OS, the 64-bit MSBuild is used by default… so how to change it.

image

Figure: Why is it saying that the SDK is not installed… oh, a bug.

This is an easy fix, but a hard to find solution. if you Open up your “build process definition” and expand the Advanced tree you will see that there is a MSBuild Platform option that is set to “Auto”, change this to “X86”.

clip_image005

Figure: You MUST set the MSBuild Platform to X86 to build a Silverlight project,

And the build failed again…

image

Figure: SSW.SqlDeploy_20100304.04 failed again trying to do code analysis.
Note: This was only run 20 or so minutes after the last build, but my build server happens to be in Australia :)

Problem 4: Can’t run Code Analysis on Build Server

Now I get Code Analysis errors…

image

Figure: Why would I be getting code analysis errors? Could it be that it is not installed?

To fix this one I just bit the bullet and installed Visual Studio 2010 onto the Build server, and…

clip_image007

Figure: Successful builds give me a warm fuzzy feeling…

Conclusion

The things that should be installed on the build server are:

  • Team Foundation Build Services 2010 or 2008 or 2005
  • Visual Studio 2010/2008/2005
  • Add-on’s for TFS or Visual Studio that may be required to execute the build.

The options you should set for any Build that has 32-bit dependencies that are causing a problem:

  • You MUST set the MSBuild Platform to X86 to build a project that can’t be built in 64-bit MSBuild.

Need Help?

www.SSW.com.au

SSW was the first company in the world outside of Microsoft to deploy Visual Studio 2010 Team Foundation Server to production, not once , but twice .

Team Foundation Server

Visual Studi2010 ALM SSW provides expert Visual Studio ALM guidance including installation, configuration and customisation through our four Microsoft Visual Studio ALM MVP’s in three countries; Australia, Beijing and the UK. They have experience deploying to small development shops all the way through to large blue chips.

Professional Scrum Developer Training

Professional Scrum Developer Training SSW has six Professional Scrum Developer Trainers who specialise in training your developers in implementing Scrum with Microsoft’s Visual Studio ALM tools.

Technorati Tags: TFBS  ALM  Silverlight  .NET  CodeProject  TFS 2010  SSW  Scrum  VS 2010  SP 2010  TFS  SharePoint

Smart Classifications

Each classification [Concepts, Categories, & Tags] was assigned using AI-powered semantic analysis and scored across relevance, depth, and alignment. Final decisions? Still human. Always traceable. Hover to see how it applies.

Subscribe

What to read next

Article Engineering Excellence

Solution: Testing Web Services with MSTest on Team Foundation Build Services 2010

Explains how to configure MSTest for automated testing of web services on Team Foundation Build Services 2010, including handling dynamic …

Read article
Article Engineering Excellence

Who broke the build?

Explains the importance of passing builds, common causes of build failures, how to identify issues and responsible users, and best practices …

Read article
Article Scrum

Finding the problem on a partially succeeded build on Team Foundation Build Services 2010

Learn how to diagnose and resolve partially succeeded builds in Team Foundation Build Services 2010 by tracing test failures, identifying …

Read article
Article

Upgrading from TFS 2010 RC to TFS 2010 RTM done

Step-by-step guide to upgrading from TFS 2010 RC to RTM, including backup, uninstall, install, configuration, SharePoint and build server …

Read article
Article Engineering Excellence

Do you know the minimum builds to create on any branch?

Explains the essential three build types, Gate, CI, and Nightly, needed per branch to ensure code quality, test coverage, and collaboration …

Read article