build - VSTS(在线)构建始终进行全部重建是否正确?

标签 build azure-devops

我在 vsts (visual studio online) 中有我的代码,并为持续集成配置了构建定义。我发现,每次 checkin 时,构建都会创建/获取一个新的虚拟机,因此,它需要获取最新的信息以获取所有内容并进行完整的重建。虽然我知道拥有一种从头开始重建的模式很好,但对于持续集成,我宁愿让它进行“构建”而不是“全部重建”。这与构建成本有关。在我的案例中,从头开始的简单重建大约需要 16 分钟。因此,考虑到我的团队 checkin 代码的方式,我每个月最终会得到大约 200 美元,仅用于构建。我觉得这有点过分。

为此,我一直在与 pss 联系,我的联系人坚持认为,这种运作方式是我唯一可以运作的方式。 (我有疑问,因为构建定义中有“干净”选项,如果每个构建都是从头开始的话,这些选项没有任何意义。)。那么您是否知道 pss 联系是否正确以及实际上每次都需要从头开始重建所有内容?

最佳答案

是的,当使用托管构建代理时,这正是我所期望的。

那么,为什么要有“清洁”选项等?由于 TFS 构建不必在托管构建代理上运行,您可以托管自己的构建服务器并在其上执行您喜欢的操作。

例如,您可以建立一个 Azure IAAS VM 并在一个代理上运行构建,您所做的只是“获取最新”和构建。

为什么托管构建代理每次都启动?我猜这是只为使用的东西付费的云心态。 MS 不想让 VM 与客户保持亲和性,这是有道理的,因为他们不知道您需要多少台服务器,需要多久需要一次。

关于build - VSTS(在线)构建始终进行全部重建是否正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37067835/

相关文章:

c# - 构建软件补丁的好习惯是什么?

javascript - 如果我仍然在构建时连接所有文件,我为什么要使用 require.js?

node.js - 在 node.js 构建脚本中复制文件

c++ - 将资源文件与应用程序链接?

angular - 什么是适合 Angular2 项目的构建系统?

.net - Visual Studio Online MsBuild 在 System.Object 上失败

azure - 使用 Azure Devops 和 Yaml 以及变量组部署 Azure 函数应用程序的 Appsettings

git - 在 Powershell 中执行 git 命令

c# - Azure DevOps Pipeline 构建失败,因为它可以创建文件夹来写入 XML 文档文件

git - 如何使用 Azure Devops 和 Cake Build 在构建时自动标记和版本?