jenkinsvs特拉维斯 – CI。 你将使用哪一个开源项目?
对于我的项目,我需要在Jenkins和Travis-CI之间进行select。 我已经使用Jenkins多年了,但我也读过关于Travis-CI的好评。
你将使用哪一个开源项目? 两者的主要优点或优点是什么?
Travis-ci和Jenkins,两者都是持续整合的工具,却有很大的不同。
特拉维斯是一个托pipe服务(免费开源),而你必须主持,安装和configurationjenkins。
特拉维斯没有jenkins那样的工作 。 运行以testing代码的命令取自一个名为.travis.yml
的文件,该文件位于您的项目代码中。 这使得每个分支可以有不同的testing代码,因为每个分支都可以有自己的.travis.yml文件版本。
如果您使用以下插件之一,则可以与Jenkins具有类似的function:
- 特拉维斯YML插件 – 警告:似乎并不stream行,可能不是真正的特拉维斯比较完整。
- Jervis – 对Jenkins进行的修改,使其能够从项目代码根目录下的
.jervis.yml
文件中创build作业。 如果.jervis.yml
不存在,它将回退到使用.travis.yml
文件。
还有其他托pipe服务您可能也考虑持续集成(非详尽列表):
- 圈子CI
- Wercker
- drone.io
- Gitlab-CI
- codeship
- 可交付
- 信号
如何select?
您可能希望与Jenkins保持联系,因为您熟悉Jenkins,或者不想依赖第三方来实现持续集成系统。 否则,我会放弃jenkins,并与免费托pipeCI服务之一,因为它们为您节省了很多麻烦(主机,安装,configuration,准备工作)
根据您的代码库托pipe的位置,我会做出以下select:
- 内部→jenkins或gitlab-ci
- Github.com→Travis-CI
要在github项目上设置Travis-CI,你所要做的就是:
- 在项目的根目录下添加一个.travis.yml文件
- 在travis-ci.com创build一个帐户并激活您的项目
你得到的function是:
- 特拉维斯将运行您的testing对您的回购做出的每一个推动
- 特拉维斯将对每一位投稿者所提出的要求进行testing
我会build议Travis的开源项目。 这只是简单的configuration和使用。
简单的步骤来设置:
- 应该有GITHUB帐户,并使用您的GITHUB帐户在Travis CI网站注册。
- 在您的项目的根目录中添加
.travis.yml
文件。 将Travis作为服务添加到存储库设置页面。
现在每次你进入你的仓库,Travis都会build立你的项目。 您可以按照简单的步骤开始使用Travis CI。
我曾在特拉维斯和jenkins工作过:我将列举两者的一些特征:
-
为项目设置CI:
特拉维斯:排在第一位。这是非常容易设置。 用github安装不到一分钟。 – login到github – 为Travis创buildWeb钩子 – 回Travis( https://travis-ci.org/ ) – 使用github凭证login并同步你的github repo并启用推送和推送请求。 在Travis非常简单的设置
jenkins:创build一个环境(jenkins大师) – 创buildnetworking钩子 – 每个工作的configuration(需要时间比特拉维斯)
-
重新运行构build:
Travis:谁在github上有写权限,他们可以通过点击
restart build
来重新运行restart build
Jenkins:根据短语重新运行构build:在PR / commit描述中提供短语文本,例如
reverify jenkins
-
控制环境:
Travis:Travis提供托pipe环境,Travis为每个构build安装所需的软件是一个耗时的过程。
jenkins:这是一次性安装,在节点/从属机器上安装所有必需的软件,并在预装环境中执行所有testing。
-
生成日志:
Travis:支持构build日志以放置在Amazon S3中。
jenkins:易于安装与构build工件插件。