My old build script wasn’t working after the migration to this new version and you will find in this post the different adaptation that I had to do.

Add missing ToolsVersion as following:

<Project DefaultTargets=Build


<Import Project=$(MSBuildExtensionsPath)\Microsoft\WebDeployment\v8.0\Microsoft.WebDeployment.targets/>


<Import Project=$(MSBuildExtensionsPath)\Microsoft\WebDeployment\v9.0\Microsoft.WebDeployment.targets/>

I also had to add the following to the beginning of my AfterBuild task:

<Target Name=AfterBuild>
CreateItem Include=$(TempBuildDir)*\.*>
Output ItemName=CompiledFiles TaskParameter=Include />
Exec Command=if exist "$(WDTargetDir)" rd /s /q "$(WDTargetDir)" />
Exec Command=if not exist "$(WDTargetDir)" md "$(WDTargetDir)" />
Copy SourceFiles=@(CompiledFiles) DestinationFolder=$(WDTargetDir)\%(CompiledFiles.SubFolder)%(CompiledFiles.RecursiveDir) />
Exec Command=if exist "$(TempBuildDir)" rd /s /q "$(TempBuildDir)" />


Otherwise I ended up with TempBuildDir folder with a part of my solution. This is just a copy of what is defined in Microsoft.WebDeployment.targets.

Now everything works like before, I can:

  1. set Staging as my active solution configuration
  2. Run a compilation
  3. Zip the merged result of the build
  4. Start uploading using ssh to the target stage server