How to build Visual Studio 2012 Publishing Profiles on a Build Server with MsBuild without installing Visual Studio 2012

build-automation, msbuild, publishing, visual-studio-2012

Solution

Just moving Dave's solution into an answer.

Solution:

Make sure you installed Microsoft Windows SDK and .Net Framework 4

From your client machine with Visual Studio 2012 update 2 installed, copy:

\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\Web\
\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\WebApplications\

To the same location on your server.

Then make a simple batch file:

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" /v:diag YOUPROJECT.sln /p:Configuration=Debug /p:DeployOnBuild=true /p:PublishProfile=YOURPROFILE

This is working for us on multiple build servers.

Problem

I read through many of the posts on here and never found a clear answer that worked. So after spending the time getting this to work, I figured I should post it. Problem: The publishing profile would build on the server, but would not publish. Solution: Make sure you installed Microsoft Windows SDK and .Net Framework 4 From your client machine with Visual Studio 2012 update 2 installed, copy: ``` \Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\Web\ \Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\WebApplications\ ``` To the same location on your server. Then make a simple batch file: "C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" /v:diag YOUPROJECT.sln /p:Configuration=Debug /p:DeployOnBuild=true /p:PublishProfile=YOURPROFILE This is working for us on multiple build servers. I hope this helps someone. It seems insane to me that Microsoft hasn't provided a MSBuild update with all the publishing options. It seems to me that the command line tools are more important on the server....

Original source