TFS2013 计划生成 : Manually triggered Builds are not being accounted for when Scheduled Build are kicked off

标签 tfs build scheduled-tasks tfsbuild

在手动触发相同的构建并且不存在任何更改后,我在阻止计划构建被自动启动时遇到了一些麻烦。

问题:构建计划在每天凌晨 3 点进行,但前提是进行了任何更改(设置选项“即使自上次构建以来没有任何更改也构建”未选中)。问题是,如果您触发手动构建并且之后没有进行任何更改,即使没有更改,计划构建仍然会被触发。请按照下面的场景举例:

设想:

  • 预定构建于今天凌晨 3 点开始 - 程序集版本更改为 1.0.0.1
  • 同一天,中午前 checkin 了几次更改。
  • 相同的构建在下午 1 点手动启动 - 程序集版本更改为 1.0.0.2
  • 从下午 1 点开始手动构建后不再进行 checkin
  • 第二天凌晨 3 点,计划构建被触发,它不应该触发(程序集版本更改为 1.0.0.3),因为自下午 1 点以来没有 checkin (手动触发)。

  • 似乎甚至没有考虑和考虑 1pm 构建。

    看起来 TFS 正在接受自上次“计划构建”而不是“上次完成的构建”(相同的构建定义)以来的计数 checkin ,在这种情况下是手动触发的。

    所以我的问题是:“如果在手动构建开始后没有 checkin ,我们有什么办法可以阻止 TFS 触发计划构建?”

    目前,TFS 似乎在构建定义的任何地方都没有该选项

    先感谢您

    最佳答案

    为了做到这一点,您需要编写自己的调度程序,为您检查以前的手动构建。你可以为此编写一个 TfsJob 或者甚至作为一个在指定时间运行的预定 powershell ......

    关于TFS2013 计划生成 : Manually triggered Builds are not being accounted for when Scheduled Build are kicked off,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26765237/

    相关文章:

    visual-studio - 与解决方案团队共享reshaper和stylecop设置

    c# - TFS 构建服务器在警告 "Cannot find the last label"后卡住

    python - 如何判断waf选择的工具?

    javascript - 在 GitHub Pages 构建期间缩小 JavaScript?

    powershell - 保持 PowerShell 窗口打开和任务计划程序

    azure - 如何在 TFS 中将模板中的所有字段设为必填?

    testing - 在 Web 浏览器/SSRS 中查看负载测试结果

    build - OpenCL中有两个几乎完全相同的内核(有些制表符而不是空格),但会生成一个,而不会

    r - 在 Shiny 的应用程序上安排任务

    c++ - 如何在 TaskScheduler 中显示任务触发器?