【问题标题】:TFS Build Workflow and MSBuild's output sequenceTFS Build Workflow 和 MSBuild 的输出序列
【发布时间】:2012-10-03 01:24:07
【问题描述】:

我正在修改复制的构建过程模板 BuildAndDeploy.xaml 以包含 InvokeProcess 活动。此活动将运行 _PublishedWebsites\ProjectName_Package\ProjectName.deploy.cmd 以将 Web 应用程序部署到 QA 服务器。最终,我会为网络场中的每台服务器多次运行ProjectName.deploy.cmd。手动一切正常,但通过 TFS 构建代理,_PublishedWebsites 文件夹及其内容创建得太晚了。我的第一次尝试是在“Compile the Project”序列中添加InvokeProcess 活动作为最后一步。然后我把它移到“If Not DisableTests”之后。为了排除故障,我在 BuildDetail.DropLocation 文件夹中运行 dir /s 命令,它始终只输出日志文件夹,不输出其他任何内容。我还手动验证了编译输出和_PublishedWebsites 文件夹及其内容是在我想运行ProjectName.deploy.cmd 文件的位置之后创建的。工作流中的哪个位置是理想的并保证准备好ProjectName.deploy.cmd 文件和其他相关的打包内容?

我正在遵循TFS2010 Build Definition to Deploy to multiple servers 中接受的答案中给出的方法。

构建放置位置是一个 UNC 路径,如果这很重要的话。 MSBuild 中使用的参数是/p:DeployOnBuild=True。 TFS Build 正确创建了包,我可以运行ProjectName.deploy.cmd 并且网络部署运行顺利。

【问题讨论】:

    标签: deployment msbuild msdeploy


    【解决方案1】:

    BuildDetail.DropLocation\_PublishedWebsites 是在活动Revert Workspace and Copy Files to Drop Location 中创建的,该活动位于外部Try Compile, Test, and Associate Changesets and Work Items 的最后。查找此文件的适当位置是BinariesDirectory\_PublishedWebsites,而不是BuildDetail.DropLocation\_PublishedWebsites。该文件夹和所有文件都是由 MSBuild 活动本身创建的。

    【讨论】:

      猜你喜欢
      • 2011-03-23
      • 2018-07-16
      • 2016-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多