0
votes

I use TFS 2010, VS 2010.

I wrote a custom msbuild proj file which I use locally to build my solution. I use MSBUILD.exe TFSBuild.proj and it does everything in my local machine. (I have a taregt called 'DoMyBuild' which kicks off the build and does everything.) I have used this in the DefaultTargets attribute as below:

<Project DefaultTargets="DoMyBuild" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

I am trying hard to configure this to use my build server with a build definition. In the build definition, under Process - I configured 'Upgrade Template' and in the build process paramters, have given the path to this TFSBuild.Proj file.

Ideally. TFS should start 'DoMyBuild' target as I read. But it gives a error looking for 'EndToEndIteration' not defined. So, I believe it is still doing a DesktopBuild which I dont want. I want to use my custom target to kick start. Is this possible ?

Any help is very much appreciated.

Thanks, Mani

1
Why do you set ToolsVersion to 3.5, when you are using VS2010? If you want to build like VS2010, you should use 4.0.Morten Frederiksen
not quite getting it. can u pls explain what do you mean by build like VS2010. To be clear, am using team explorer in vs2010 to create a new build definition where I specify my TFSBuild.proj.Everything Matters
If ToolsVersion is set to 3.5 it's like building in VS2008. If it is set to 4.0 it's like building in VS2010.Morten Frederiksen

1 Answers

1
votes

You problem is discussed here.

Make sure you have at least an EndToEndIteration target defined in your MSBuild project.

<Target Name="EndToEndIteration"
Condition=" '$(IsDesktopBuild)'!='true' "
DependsOnTargets="$(EndToEndIterationDependsOn)" />