首页 文章

詹金斯vs特拉维斯-CI . 您将在开源项目中使用哪一个? [关闭]

提问于
浏览
221

对于我的项目,我需要在Jenkins和Travis-CI之间做出选择 . 我多年来一直在使用Jenkins,但我也读过关于Travis-CI的好评 .

您将在开源项目中使用哪一个?两者的主要好处或优点是什么?

3 回答

  • 249

    Travis-ci和Jenkins虽然都是持续集成的工具,但却截然不同 .

    Travis是托管服务(免费用于开源),而您必须托管,安装和配置Jenkins .

    特拉维斯没有像詹金斯那样的工作 . 运行以测试代码的命令取自名为 .travis.yml 的文件,该文件位于项目代码中 . 这使得每个分支都可以轻松拥有不同的测试代码,因为每个分支都可以拥有自己的.travis.yml文件版本 .

    如果您使用以下插件之一,则可以与Jenkins具有类似的功能:

    • Travis YML Plugin - 警告:似乎不受欢迎,可能与真正的特拉维斯相比并不完整 .

    • Jervis - 对Jenkins进行修改,使其从项目代码根目录下的 .jervis.yml 文件中读取创建作业 . 如果 .jervis.yml 不存在,它将回退到使用 .travis.yml 文件 .

    您还可以考虑进行持续集成的其他托管服务(非详尽列表):


    如何选择?

    您可能希望与Jenkins保持联系,因为您熟悉它或者不想依赖第三方来实现持续集成系统 . 否则我会放弃Jenkins并使用其中一个免费的托管CI服务,因为它们可以为您节省很多麻烦(主机,安装,配置,准备工作)

    根据托管代码存储库的位置,我将做出以下选择:

    • 内部→Jenkins或gitlab-ci

    • Github.com→Travis-CI


    要在github项目上设置Travis-CI,您所要做的就是:

    • 在项目的根目录中添加.travis.yml文件

    • 在travis-ci.com创建一个帐户并激活您的项目

    您获得的功能是:

    • Travis将为您的回购中的每次推送运行测试

    • Travis将对贡献者提出的每个拉取请求进行测试

  • 33

    我在Travis和Jenkins上工作过:我将列出两者的一些功能:

    为项目设置CI

    Travis 排在第一位 . 这很容易设置 . 使用GitHub设置不到一分钟 .

    • 登录GitHub

    • 为特拉维斯创建Web挂钩( edit:

    • 返回Travis,并使用您的GitHub凭据登录

    • 同步您的GitHub存储库并启用推送和拉取请求 .

    Jenkins:

    • 创造一个环境(詹金斯大师)

    • 创建Web挂钩

    • 配置每项工作(与Travis相比需要时间)

    重新运行构建

    Travis: 任何对GitHub具有写访问权限的人都可以通过单击`restart build重新运行构建

    Jenkins: 根据短语重新运行构建 . 您在PR / commit描述中提供短语文本,如 reverify jenkins .

    控制环境

    Travis: Travis提供托管环境 . 它为每个构建安装所需的软件 . 这是一个耗时的过程 .

    Jenkins: 一次性设置 . 在节点/从机上安装所有必需的软件,然后在预安装的环境中构建/测试 .

    构建日志:

    Travis: 支持构建日志以放置在Amazon S3中 .

    Jenkins: 易于使用构建工件插件进行设置 .

  • 26

    我建议Travis开源项目 . 配置和使用起来非常简单 .

    简单的设置步骤:

    • 应该有GITHUB帐户并使用您的GITHUB帐户在Travis CI网站注册 .

    • 在项目的根目录中添加 .travis.yml 文件 . 在存储库设置页面中添加Travis作为服务 .

    现在每次进入您的存储库时,Travis都会构建您的项目 . 您可以使用Travis CI关注simple steps to get started .

相关问题