本文概述
Jenkins和Circle CI用作持续集成(CI)工具, 允许开发人员在开发过程中集成代码分支, 并对它们运行一系列自动化测试。他们都将耗时的手动构建, 测试和部署软件任务转换为快速, 自动化的过程。
在将Travis CI与Jenkins进行比较时, 我们需要考虑我们的业务需求和预算。
Jenkins
Jenkins是使用Java编程语言编写的最受欢迎的开源自动化服务器。它促进了软件开发过程中持续集成和持续交付(CI / CD)的自动化过程。
Jenkins支持1400多个其他软件工具的插件。这些插件将Jenkins扩展到五年;平台, UI, 管理, 源代码管理和构建管理。
Jenkins易于安装和使用。它提供了一个令人印象深刻的浏览器托管的项目管理仪表板。
评估和选择Jenkins的一些常见原因包括:
- 开源免费
- 广泛使用并有据可查
- 充满活力的用户社区
- 与多种工具和技术集成。
- 插件支持
- 易于安装, 配置和升级
- 分布式构建
- 监控外部工作
- 支持各种身份验证方法, 通知, 版本控制系统等
Circle CI
Circle CI是基于云的工具, 可自动执行集成和部署过程。它提供了容易的设置和维护, 没有任何困难。 Circle CI是基于云的系统, 这意味着不需要专用服务器, 也不需要维护具有免费计划的服务器, 甚至对于企业帐户也是如此。它可以与GitHub, Amazon EC2, dotCloud, Appfog等集成, 并被Spotify, Facebook, RedBull, Harvest和Teespring等许多公司使用。
Circle CI还专注于使用多种方法(如单元测试, 集成测试和功能测试)在部署代码之前对其进行测试。该工具支持容器, Linux, OSX, 并且可以在私有云或你自己的数据中心内运行。
Circle CI具有以下功能:
- 快速设置
- 深度定制
- 智能通知
- 自动并行化
- 轻松快捷地启动
- 轻巧易读的YAML配置
- 不需要任何专用服务器即可运行Circle CI。
- 它缓存需求安装和第三方依赖关系, 而不是环境的安装。
Jenkins和Circle CI比较表
以下是Jenkins和Circle CI之间的主要比较:
Jenkins | Circle CI |
---|---|
在Jenkins中, 构建是由Jenkins UI配置的, 并且作业的所有设置都存储在Jenkins服务器的Jenkins文件系统中, 这使得难以与团队或组织共享配置详细信息。通过克隆Github或其他源存储库, 无法复制Jenkins中存储的信息。 | 在CircleCI中, 我们可以在一个名为“ circle.yaml”的文件中构造所有作业。 CI配置很容易, 就像其他任何源代码存储库一样, 这使得共享和备份变得很容易。在CircleCI上, 只有少量设置(例如机密)将以加密格式存储。 |
在Jenkins中, 团队需要通过安装所有依赖项来维护Jenkins服务器, 并调试是否存在任何问题。 | 在Circle CI中, 我们不需要维护服务器, 因为每个作业都将在默认情况下将安装所有依赖项的新环境中启动。 |
在Jenkins中, 调试会有些困难。 | 在Circle CI中, 开发人员可以使用它的ssh功能轻松进行调试。 |
由于插件数量较多, Jenkins的Web UI速度较慢或响应速度较慢。 | Circle CI的Web UI经常进行改进, 使其得到用户的欢迎。 |
在Jenkins中, 我们没有对Docker工作流的内置支持, 用户需要安装并使其在构建环境中可用。 | 在Circle CI中, 我们在工作流中具有对Docker的内置支持, 可以通过在circle.yaml文件中添加services部分来访问它。 |
Jenkins可以通过多线程支持多个作业。 | Circle CI具有对并行性的内置支持, 可以通过项目设置来实现。 |
Jenkins环境仅在用户指示时才会更改。 | Circle CI更改环境时不会发出警告, 这是一个问题。 |
在Jenkins中, 机密将使用Jenkins凭据和插件进行加密。 | 在Circle CI中, 我们没有Jenkins这样的安全性。 |
评论前必须登录!
注册