【问题标题】:Extracting MSDeploy Zip package using variables使用变量提取 MSDeploy Zip 包
【发布时间】:2018-01-28 08:19:05
【问题描述】:

我正在 VSTS 中设置一个自动构建,它将通过 FTP 将发布的文件传输到我的服务器。

我有这个工作,但我实现它的方式,我觉得是 hacky 和不可持续的。

您从屏幕截图中看到的过程将发布由自述文件、cmd 文件和包含我所有发布文件的 zip 组成的工件,然后我使用下面非常明确的位置提取 ZIP。

$(Build.ArtifactStagingDirectory)\temp\Content\d_C\a\1\s\IntermittentBug\IntermittentBug\obj\Release_EukHosts\Package\PackageTmp

我在 VSTS 中使用托管构建服务器,但路径包含

d_C\a\1\s\

我认为这会及时改变。我需要的是一个变量来满足这条路径,所以它总是会成功。

如何更新它以使其更高效和可持续?

【问题讨论】:

  • 你解决了这个问题吗?

标签: msbuild azure-devops azure-pipelines


【解决方案1】:

首先,正如 jessebouwing 所说,该变量称为Build.SourcesDirectory

关于路径结构,简单的方法是在Visual Studio Build任务中指定/p:PackageTempRootDir=""msbuild参数来移除源路径结构,那么路径就会像Content\D_C\PackageTmp

另一方面,您也可以通过文件系统模式发布网络应用。

【讨论】:

    【解决方案2】:

    这个变量被一个名为Build.SourcesDirectory 的预定义变量捕获。见complete list of predefined variables here

    在您的批处理或 powershell 脚本中,此变量可用作名为 %BUILD_SOURCESDIRECTORY% / $env:BUILD_SOURCESDIRECTORY 的环境变量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多