【问题标题】:Build retention policy - maximum number of builds构建保留政策 - 构建的最大数量
【发布时间】:2017-11-03 17:51:30
【问题描述】:

我们有一个每天触发 5 到 10 次的构建定义。

我们只想保留最后一个构建。

我们如何通过构建保留政策实现这一目标?该政策只接受要保留的最小数量,而不是最大数量。

【问题讨论】:

    标签: tfs


    【解决方案1】:

    在 TFS 之前,Xaml 构建可以配置为只保留最后 x 个构建(例如,保留最后 5 个构建)。

    但是,vNext 构建改变了它的工作方式,将构建保持 x 天,并保持最少 y。

    恐怕您需要旧保留政策之类的功能。曾经有过相关的用户声音:

    为 vNext Build 恢复旧式保留政策 定义

    https://visualstudio.uservoice.com/forums/330519-visual-studio-team-services/suggestions/8266650-bring-back-old-style-retention-policies-for-vnext

    但是它通过添加内部版本号的控制来完成。只是没有保留最新选项。很遗憾,您无法通过构建保留政策实现这一目标

    作为一种解决方法,您可以尝试使用 TFS API 来执行此操作。您可以运行一个实用程序来清理构建工件放置位置以进行构建。这是链接中skundu's answer 的示例。

    【讨论】:

    • TFS REST API 似乎是正确的方法:我将使用预定脚本循环构建定义的构建并删除除最后一个之外的所有构建。
    【解决方案2】:

    您可以管理完整的保留政策、要保留的最小数量和团队项目集合的最大数量。您可以在您的帐户或团队项目帐户上更改构建和发布设置的政策:

    1. VSTS:https://{your_account}.visualstudio.com/_admin/_buildQueue

    2. TFS 2017:https://{your_server}/tfs/DefaultCollection/_admin/_buildQueue

    3. TFS 2015 更新 3: http://{your_server}:8080/tfs/DefaultCollection/_admin/_buildQueue

    4. TFS 2015 RTM:http://{your_server}:8080/tfs/DefaultCollection/_admin/_buildQueue#_a=settings

    你可以在这里找到更多信息Build and release retention policies

    希望对你有帮助

    【讨论】:

    • 我知道如何更改策略设置;似乎不可能实现这个特定的场景:只保留最后一个构建。
    【解决方案3】:

    如果您使用的是 VSTS,您的构建将在凌晨 3 点之前被删除。 UTC 那天。

    以下内容来自文档

    https://docs.microsoft.com/en-us/vsts/build-release/concepts/policies/retention

    您的保留政策每天凌晨 3:00 运行。世界标准时间。没有 更改此过程的选项。

    如果您只想获取最新版本,请将最小数量设置为 1。对于特定版本,保留的最大版本数量无法更改。对于团队项目集合,您需要将其更改为 1。但正如我之前提到的,这并不意味着您将始终拥有 1 个构建版本。

    【讨论】:

    • 团队项目集合没有“最大构建数”设置;这只是“最大天数”。
    • 是的,项目集合也没有最大构建。这只是最大保留策略和默认保留策略。因此,您的问题的答案是当前的 TFS 构建系统无法实现您正在尝试做的事情。
    • 我在博客中介绍了我们在构建系统中保留最大构建数量的方式。 hamidshahid.blogspot.com/2017/11/… 里面有代码。如果您需要更多帮助,请告诉我
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多