CI/CD与本地机器的最佳速度关系是什么

63次阅读
没有评论

问题描述

想了解在CI/CD作业与本地机器之间,应该保持怎样的执行速度关系。用户提出了以下几个问题:
– CI/CD与本地机器的执行速度应该相同吗?
– 如果要更快,应该更快多少?
– 如果要更慢,应该更慢多少?

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1

CI/CD流水线的执行速度应尽可能快,无论是在本地还是共享环境中,不考虑设置所需的时间。这实际上决定了项目的整体开发速度。

但需要注意,这里的速度并不是指每个CI执行的持续时间。执行的持续时间可能与CI QA验证的覆盖范围直接相关,这会影响开发过程的稳定性和产品的质量。例如,在CI验证中包含一个冒烟测试将增加CI执行的持续时间,但也会提高产品的质量 – 这是一件好事。

然而,需要提到的是,这种私有的CI设置(即使是那些有SLA支持的CI设置)通常是ThoughtWorks团队所称的“CI剧院”的一个迹象。仅仅使用CI工具并不能使整个过程成为一个CI过程。在发布之前仍需要进行后续分支合并(除了挑选的修复之外)的项目/特性/集成分支意味着开发仍然是在孤立的环境中进行的(这些分支就是孤立的环境)- 瀑布式开发方式。

附注:坦率地说,如果我是一个团队的一员,而管理层不理解CI的重要性(更不用说在这个关键的主题上无法有效沟通),我会寻找另一份工作 – 我怀疑他们能够在业务上长久存在 ;)

方案2

它们应该大致相等。

如果CI系统比本地运行速度更快,你的本地开发将会变得非常慢。

如果你的CI系统比本地运行速度慢得多,它将成为一个障碍,而不是提供价值的东西。

以上是对于CI/CD与本地机器的最佳速度关系的解决方案。根据实际情况,可以选择方案1或方案2。

正文完