为什么 Atom、VSCode 或 Ava 使用多个持续集成服务?

为什么 Atom、VSCode 或 Ava 使用多个持续集成服务?

持续集成服务,例如特拉维斯圆环或者应用商店已被证明确实有用,可以确保项目自动按预期运行。

但是为什么有些存储库使用多个 CI?

难道一个已经做得很好了吗?是为了防止一两个服务无法按预期运行或在某些时候宕机吗?

例如:

原子(3):CircleCI、Travis、AppVeyor
VScode(2):Travis,AppVeyor
阿娃(2):Travis,AppVeyor
(2):Travis,CircleCI

更新:

反应很久以前就从 TravisCI 转换到了 CircleCI。

https://github.com/facebook/react/pull/8486

就上下文而言,我们目前有兴趣转向 CircleCI,因为我们在 GitHub 上 /facebook org 的 Travis 队列总是落后几个小时。另一方面,Circle 构建几乎可以立即开始。

这是否与大型项目使用多个 CI 服务的原因有关?

答案1

它们通常可以胜任不同的工作:

  • Travis 支持 Linux 和 macOS,但目前不支持 Windows。

  • Circle CI 似乎比 Travis 更可靠地支持 macOS。

  • AppVeyor 支持仅有的Windows,它可以执行其他任务 - 例如为发布生成“安装程序”包。

相关内容