I am trying to implement a deployment step using MSBuild with options DeployOnBuild and a PublishProfile with the WebPublishMethod set to FileSystem.
My PublishProfile looks like this:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LaunchSiteAfterPublish>False</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<DeleteExistingFiles>False</DeleteExistingFiles>
<MSDeployUseChecksum>true</MSDeployUseChecksum>
</PropertyGroup>
</Project>
I am calling this from a build script that invokes MSBuild on individual projects and sets the PublishUrl depending on the build target (developer or deployment):
>msbuild.exe /p:DeployOnBuild=true /p:PublishProfile=c:\path\to\Profile.pubxml /p:SolutionDir=c:\path\to\solution /p:PublishUrl=c:\path\to\target /p:VisualStudioVersion=14.0 c:\path\to\project.csproj
The build process is intended to overlay project resources, including DLLs, over a third-party application. Due to behavior of NuGet restore, later versions of DLLs do not consistently have later change dates, so are being skipped during the deployment process. I have added the MSDeployUseChecksum option, which per documentation (here and here) should resolve the issue, but is not having an impact.
Does MSDeployUseChecksum work with the FileSystem deployment method? If yes, are any additional steps or settings required to make it work?