CI\CD工具 TeamCity和Jenkins简单介绍

Jenkins

Jenkins是CI市场中最知名且最常见的名号之一。其最初是由Sun公司的一位工程师打造的一个辅助项目,并迅速扩展为最大的开源CI工具之一,可帮助工程团队实现自动化部署。顺带一提:我们OverOps也在使用Jenkins以及自己开发的CLI工具。

它有什么作用?

与其它CI工具一样,Jenkins可以自动构建、测试及部署任务。该工具支持Windows、Mac OSX以及各类Unix系统,可以使用本机系统软件包以及Docker进行安装,也可以在安装了Java Runtime Environment(JRE)的任何机器上独立安装。

在实践方面,Jenkins允许团队中的任何成员将他们的代码推送到build当中,并立即获得其准备情况的反馈。当然,在大多数情况下,您的团队需要通过自定义要求对Jenkins进行一些调整和定制。

Jenkins的强大之处体现在其丰富的插件生态系统上。它提供超过1000款插件选项,可以集成几乎所有市场上可用的工具和服务。作为一款开源工具,您还可以选择自定义适合自身情况的解决方案——就像我们一样。然而,大家需要投入一定时间与精力来确保它适合您的实际需求。

价格:免费

一点补充:我们要再次强调:开源+插件=社区。您可以想到的任何配置、工作流程、需求或者愿望,都可以在Jenkins及其插件的帮助下成为现实。

一句话总结:如果您正在寻找便宜(免费!)的CI解决方案,并愿意投入精力来定制您的环境并需要用户社区的支持,Jenkins无疑是您的最佳选择。
1.jpg


标准Jenkins工作清单

 

TeamCity

TeamCity是由JetBrains开发的CI / CD服务器。其提供“开箱即用”的持续集成功能,并允许用户根据自己的需要实现适配。它支持多种语言(Java,.NET,Ruby等),而JetBrains也为其提供多款支持工具与出色的说明文档。

它有什么作用?

作为CI / CD工具,TeamCity旨在改善发布周期。有了它,您可以即时查看测试结果,查看代码覆盖率并查找重复项,同时自定义builod持续时间、成功率、代码质量及其他基于统计信息的自定义指标。

一旦TeamCity在您的版本控制系统中检测到更改,它就会向队列添加build。服务器找到空闲且兼容的build代理,并将排队中的build分配给此代理。此后,由该代理执行构建步骤。

在此过程中,TeamCity服务器会记录各项日志消息、测试报告以及正在进行的其他更改。这些更改会实时保存并上传,意味着用户可以在build更改时了解构建过程中发生的情况。该工具还提供了在不同平台和环境中同时运行并行buld的选项。

价格:专业服务器许可免费提供,其中包括100套build配置、对所有产品功能的完全访问权限、通过论坛和问题跟踪器获得支持以及3个build代理。企业服务器许可起价为1999美元,且您需要的代理数量越多,价格也会随之提高。

一点补充:TeamCity附带有gated提交选项,可以防止开发人员破坏版本控制系统中的源代码。其具体原理是在提交之前,首先以远程方式运行build实现本地变更,从而确保提交内容不存在破坏性风险。

一句话总结:TeamCity在过去几年中越来越受欢迎,并为市场上的其他CI工具带来了不错的发展方向指引。如果您有兴趣追踪构建与测试过程,或者想要一套免费且功能强大的CI解决方案,毫无疑问TeamCity值得一试。

4.png


TeamCity仪表板

 
posted @ 2022-09-29 10:17  云long  阅读(1041)  评论(0编辑  收藏  举报