在MsBuild AfterBuild目标中通过WebDeploy部署静态内容

时间:2016-04-28 09:10:38

标签: msbuild msdeploy

我正在寻找一种从我的MsBuild目标中运行WebDeploy调用的方法,其中WebDeploy调用与正在构建的应用程序无关。

我有一个命令行msdeploy,如下所示:

msdeploy.exe –verb:sync 
    -source:contentPath="C:\MyFolderPath" 
    -dest:contentPath="C:\MyDestinationPath"

这完美无缺。现在我想将它插入到AfterBuild目标的msbuild文件中:

<MSDeploy Verb="Sync"
  Source="-contentPath:'C:\MyFolderPath'"
  Destination="-contentPath:'C:\MyDestinationPath'" />

当我构建时,这给了我ERROR_PROVIDER_NOT_FOUND。无论是否使用 -

,我都尝试过-contentPath

我似乎找不到MsDeploy任务的文档,虽然这没有帮助。任何帮助非常感谢

1 个答案:

答案 0 :(得分:0)

删除Source和Destination属性中的破折号(&#34; - &#34;)。您可能还需要使用转义双引号而不是单引号,但您可以尝试两种方式:

<MSDeploy      
  Verb="sync"
  Source="dirPath=%22$(FilesToPackageFolder)%22"
  Destination="package=%22%(DeployTypes.DeployPackagePath)%22"
  />