栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

持续集成与持续部署(三)——实现持续集成的效率工具对比之Jenkins、Travis CI、Circle CI和其他持续集成工具

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

持续集成与持续部署(三)——实现持续集成的效率工具对比之Jenkins、Travis CI、Circle CI和其他持续集成工具

持续集成与持续部署(三)——实现持续集成的效率工具对比之Jenkins、Travis CI、Circle CI和其他持续集成工具 效率工具对比

点击查看效率工具

1. Jenkins

Jenkins,原名Hudson,2011年改为现在的名字,它 是一个开源的实现持续集成的软件工具。官方网站:http://jenkins-ci.org/。

Jenkins 能实时监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。

Jenkins特点:

易安装:Jenkins是一个独立的基于Java的程序,随时可以运行,包含Windows,Mac OS X和其他类Unix操作系统的软件包。仅仅一个 java -jar jenkins.war,从官网下载该文件后,直接运行,无需额外的安装,更无需安装数据库;易配置:提供友好的GUI配置界面;变更支持:Jenkins能从代码仓库(Subversion/CVS)中获取并产生代码更新列表并输出到编译输出信息中;支持永久链接:用户是通过web来访问Jenkins的,而这些web页面的链接地址都是永久链接地址,因此,你可以在各种文档中直接使用该链接;**集成E-Mail/RSS/IM:**当完成一次集成时,可通过这些工具实时告诉你集成结果(据我所知,构建一次集成需要花费一定时间,有了这个功能,你就可以在等待结果过程中,干别的事情);JUnit/TestNG测试报告:也就是用以图表等形式提供详细的测试报表功能;支持分布式构建:Jenkins可以把集成构建等工作分发到多台计算机中完成;文件指纹信息:Jenkins会保存哪次集成构建产生了哪些jars文件,哪一次集成构建使用了哪个版本的jars文件等构建记录;支持第三方插件:使得 Jenkins 变得越来越强大;凭借更新中心中的数百个插件,Jenkins几乎集成了持续集成和持续交付工具链中的所有工具。Rest API - 可以访问控制您获取的数据量,获取/更新config.xml,删除作业,检索所有构建,获取/更新作业说明,执行构建,禁用/启用作业

Jenkins优点:

价格(免费)定制插件系统完全控制系统

Jenkins缺点:

需要专用服务器(或多个服务器)。这导致额外的费用。对于服务器本身,DevOps等…配置/定制所需的时间 2. Travis CI

Travis CI是一个托管的持续集成服务,用于构建和测试在GitHub上托管的软件项目。

Travis CI is a hosted continuous integration service used to build and test software projects hosted at GitHub

Travis CI的特点:

基于云:TravisCI是一个基于云的系统 - 不需要专用服务器,您无需管理它。

支持Docker运行测试

使用YAML文件进行配置

可选择Linux和Mac OSX上同时运行测试

开箱即用的支持的语言

Android,C,C#,C ++,Clojure,Crystal,D,Dart,Erlang,Elixir,F#,Go,Groovy,Haskell,Haxe,Java,Javascript(使用Node.js),Julia,Objective-C,Perl,Perl6, PHP,Python,R,Ruby,Rust,Scala,Smalltalk,Visual Basic

支持多环境构建矩阵:如Python 2.7 , 3.4, 3.5 + Django 1.8, 1.9, 1.10

构建矩阵是一种工具,可以使用不同版本的语言和包运行测试。您可以以不同的方式自定义它。例如,某些环境的失败可以触发通知但不会使所有构建失败(这对包的开发版本有帮助)

Travis CI优点:

开箱即用构建矩阵快速启动轻量级YAML配置开源项目的免费计划无需专用服务器

Travis CI缺点:

与CircleCI相比,价格更高,没有免费的企业计划定制(对于某些你需要第三方的东西) 3. Circle CI

在GitHub或Bitbucket上的软件存储库被授权并作为项目添加到circleci.com之后,每个代码更改都会在干净的容器或VM中触发自动化测试。

CircleCI在2017年被Forrester评为持续集成领导者,并被命名为多个最佳DevOps工具列表。CircleCI成立于2011年,总部位于旧金山,拥有全球性的远程员工队伍,由Scale Venture Partners,DFJ,baseline Ventures,Top Tier Capital,Industry Ventures,Heavybit和Harrison metal Capital提供风险投资。

Circle CI的特点:

云&本地化:CircleCI是一个基于云的系统 - 不需要专用服务器,您无需管理它。 但是,它还提供了一个本地解决方案,允许您在私有云或数据中心中运行它。商业&免费:即使是商业帐户,它也有免费计划Rest API - 您可以访问项目,构建和工件(artifacts)。构建的结果将是工件或工件组。 工件可以是已编译的应用程序或可执行文件(例如,android APK)或元数据(例如,关于测试`成功的信息)按需安装:CircleCI 缓存必要的安装(requirements installation)。 它会检查第三方依赖项,而不是持续安装所需的环境SSH模式:您可以触发SSH模式访问容器并进行自己的调查(如果出现任何问题)最小化配置:这是一个完整的开箱即用解决方案,需要最少的配置调整

CircleCI优点:

快速启动CircleCI有一个免费的企业项目计划这很容易,也很快开始轻量级,易读的YAML配置您不需要任何专用服务器来运行CircleCI

CircleCI缺点:

CircleCI仅支持2个版本的Ubuntu免费(12.04和14.04)和MacOS作为付费部分

尽管CircleCI可以使用并运行所有语言,但tt仅支持“开箱即用”的以下编程语言:Go(Golang),Haskell,Java,PHP,Python,Ruby / Rails,Scala

如果您想进行自定义,可能会出现一些问题:您可能需要一些第三方软件来进行这些调整

此外,虽然作为基于云的系统是一方的优势,它也可以停止支持任何软件,你将无法阻止

4.持续集成工具对比

总结一下:

分类JenkinsTravis CICircle CI
本地部署支持不支持支持
REST API支持支持支持
配置复杂,高度可配置YAML文件YAML文件
按需安装
跨平台支持Linux + MacOSLinux + MacOS(付费)
多服务器按需
快速构建手动配置复杂快(需要写配置文件)最快
基本环境Java云环境云环境
费用免费特定免费(69$/c)特定免费(50$/c)

Travis CI的价格(非常感人):

CirCle CI的价格:

5.其他持续集成工具

其他的一些持续集成的工具:CruiseControl,TeamCity,Continuum等

AnthillPro:商业的构建管理服务器,提供C功能Bamboo:商业的CI服务器,对于开源项目免费Build Forge:多功能商业构建管理工具,特点:高性能、分布式构建Cruise Control:基于java实现的持续集成构建工具CruiseControl.NET:基于C#实现的持续集成构建工具Lunt build:开源的自动化构建工具Para Build:商业的自动化软件构建管理服务器

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/755669.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号