We use Jenkins and msbuild to compile and package our software.
We've upgraded to Visual Studio 2012, which greatly improves the command line publishing functionality.
According to this: How do I configure MSBuild to use a saved publishProfile for WebDeploy?
I should be able to create the profile (I have, it working in VS2012 and deploys to C:\Built\PojectName) and in the jenkins job fire it off with:
msbuild myproj.csproj /p:DeployOnBuild=true;PublishProfile=Jenkins$Configuration.pubxml
Where $Configuration
is Debug
.
The build runs and finishes with "SUCCESS".
However, there is no Built
folder created, there is a .zip
file inside obj\debug
This is not what it's configured to do:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Debug</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>C:\Built\blahblah</publishUrl>
<DeleteExistingFiles>True</DeleteExistingFiles>
<PrecompileBeforePublish>True</PrecompileBeforePublish>
<EnableUpdateable>True</EnableUpdateable>
<DebugSymbols>True</DebugSymbols>
<WDPMergeOption>DonotMerge</WDPMergeOption>
</PropertyGroup>
</Project>
Further to that, if I deliberately munge the profile name to, say, NoSuchFile.pubxml
, it still completes with success.
On the server we have Jenkins, .net 4.5, a recent Windows SDK and MS Web Deploy 2.0 installed.
Why is msbuild
not picking up my publish profile?