Jenkins持续集成的13种替代方案

在《Jenkins越来越老了-现在该继续前进》,我们讨论了Jenkins最常见的问题,这些问题促使我们寻找替代方法。这就是为什么在本文中,我们提供了用于持续集成的最常见的Jenkins替代品列表。

1. BuildMaster

Buildmasters是由Inedo研发的Jenkins替代品,它可以使开发者把软件发布到任何环境。该工具为不同的平台提供持续集成功能,使组织可以创建自己的软件发布管理平台。团队可以处理自己的应用程序,并独立部署到其环境中。

不仅如此,它还可以防止发布未经测试的软件。用户对它的简单性感到非常满意。

https://inedo.com/buildmaster/download

2. Microtica

Microtica是一个DevOps自动化工具,涵盖了整个软件交付过程,从构建云基础架构到使用Kubernetes向云交付应用程序和服务。Microtica的即用型( ready-to-use )组件为用户提供了可重复使用的代码段,并且可以帮助你在几分钟内创建基础结构。

借助微服务生成器,开发人员可以自动创建微服务。借助集成的Kubernetes仪表板,他们只需单击几下即可创建可扩展的应用程序。

Microtica的流水线定义了每个组件和微服务的工作流程。用户可以随时自动或手动触发它们,以大致了解其构建过程。他们可以执行所有操作,而无需离开Microtica Web门户,每次更改都会有Slack通知。

最后,Microtica允许开发人员自动化设置其睡眠周期,从而降低AWS成本。一旦他们激活了节能模式( saving mode ),Microtica就会自动运行并防止过度支出。而且,所有节省都可以在节省成本的仪表板上找到。

https://microtica.com/

3. GitLab

GitLab是基于云的CI平台,可让开发团队更有效地处理其多样化的工具。它使组织可以通过集中式的版本控制系统安全地计划,构建和管理代码。此外,GitLab使用户能够使用Docker和Kubernetes来处理组件,处理容器以及打包应用程序和依赖项。

GitLab易于集成。但是,它有时可能会有一些烦人的错误和局限性,以及在实现完全自动化方面缺少一些功能。

https://about.gitlab.com/

4. CircleCI

Circle CI也是Jenkins替代产品之一,可在任何环境(例如Python API服务器或Docker集群)中运行。Circle CI工具消除了漏洞并增强了应用程序的一致性。它支持多种语言,例如C ++,NET,JavaScript,PHP,Ruby和Python。此外,当触发新的构建时,可以自动取消排队和正在运行的构建。它可以与GitHub,GitHub Enterprise和Bitbucket集成。

根据TrustRadius上的用户称,CircleCI的最大优势是自动化构建,但是有时流水线作业可能会花费很长时间。

https://circleci.com/

5. Bamboo

Atlassian的Bamboo是一款持续集成的服务器,可自动在一个地方创建,监视和发布。它可以轻松地与JIRA应用程序和Bitbucket集成。而且,Bamboo与Docker,Git,SVN和Amazon S3存储集成。

Bamboo根据在存储库中检测到的更改,它可以触发Bitbucket的构建并推送通知。它既可以托管,也可以本地部署。

使用者说Bamboo的构建过程的可见性很好,但是一些概念和集成尚不清楚。

https://www.atlassian.com/software/bamboo

6. TravisCI

TravisCI是一项持续集成托管服务,开发人员可以使用它来开发和验证GitHub和Bitbucket托管的应用程序。它可以测试所有请求,以确保不会发布未经测试的代码。你只需登录GitHub,即可设置你的项目,包括数据库。

TravisCI非常适合一个小型项目,并且构建速度很快。但是,当你有一个较大的项目需要照顾依赖关系以及构建的性能时,可能会遇到一些问题。

https://travis-ci.org/

7. Semaphore

Semaphore是Jenkins替代产品之一,支持GitHub,Kubernetes,iOS,Docker,Kubernetes的整个CI/CD流程,并且预先安装了100多种工具。

Semaphore可以使任何持续交付流水线自动化,支持可自定义的阶段,还可以并行执行,管理三方依赖等。

Semaphore构建非常快,平台也易于设置。但是,用户说UI有时会令人困惑,并且持续部署的功能有限。

https://semaphoreci.com/product

8. Buddy

Buddy是一个CI/CD平台,可通过简单的UI/UX减少配置和维护Jenkins的工作,从而使构建和部署应用程序变得非常简单。

你可以通过具有YAML导出功能的GUI,在15分钟内执行配置。它能够完美的支持Docker和Kubernetes,可在云和本地环境中使用。

Buddy的设置非常简单,但是其费用太高了。

https://buddy.works/

9. Drone.io

Drone.io是一个CD平台,使用简单的YAML配置文件和docker-compose在Docker容器中创建和执行流水线。Drone.io可以在单独的Docker容器中执行每个流水线步骤。

Drone.io是Jenkins替代产品之一,易于安装,是企业的理想解决方案,但它缺乏某些功能,需要进一步定制开发。

https://drone.io/

10. GoCD

GoCD是开源的持续集成服务器。你可以使用它来可视化动态工作流程。此CI工具使用优雅的设计来构建CD流水线。

GoCD支持并行和顺序执行,并可以随时部署任何版本。它拥有一个积极支持的社区。

GoCD目前不能够在多个服务器上扩缩容,但是它的优点之一是你可以自定义自己的流程。

https://www.gocd.org/

11. TeamCity

TeamCity是JetBrains的CI/CD工具。它允许用户在提交代码之前构建,监视和运行自动化测试,从而维护代码库的干净。

TeamCity提供了全面的VCS集成,即使没有任何内部版本运行,也可以始终保持CI服务器正常运行。它可以与Amazon EC2,Microsoft Azure和VMware vSphere集成。

TeamCity是一个现代,健壮和透明的解决方案,为你的开发人员提供了友好的流水线环境。但是,你需要注意服务器配置。

https://www.jetbrains.com/teamcity/

12. Buildkite

Buildkite是一个开源平台,你可以在其中运行CI流水线。它提供了代码控制集成,聊天功能。你可以将其构建为代码系统,从而可以通过其Web平台监视和控制所有流水线。

但是,Buildkite平台缺少一些DevOps流程,例如源代码管理和安全测试。

https://buildkite.com/

13. Zuul

Zuul是一个开源CI工具,主要解决了Jenkins关于CI测试的问题。Zuul和Jenkins的主要区别在于,Zuul可以跨多个存储库测试代码。除此之外,Zuul的执行速度也很快。

近年来,Zuul已成为自动合并,构建和测试对项目所做的任何新更改的工具。对于企业级组织来说,这很有必要。

结论

Jenkins是许多开发团队仍在使用的工具。但是,它不再是唯一的CI工具。不断寻求改善你的工作方式,意味着要使用多种方法,这些方法将帮助你更轻松,更快,更一致地完成工作。在使用传统方式时,不要忽视创新。

译者:王延飞

原文链接:https://dzone.com/articles/13-jenkins-alternatives-for-continuous-integration

END

Kubernetes CKA实战培训班推荐:
(0)

相关推荐

  • 构建基于Python的持续交付-附书单推荐

    在互联网行业高速发展的今天,掌握CI/CD已经成了加薪必不可少的技能了.要真正做到CI/CD,对于我们测试的要求是相当的高了,芒果在昨天一天的时间里就听了数次的吐槽说这些知识点太难掌握了,要求太多了, ...

  • Kubernetes Ingress 可视化编辑器

    原创 倪朋飞 漫谈云原生 1周前 Ingress[1] 是 Kubernetes 集群中用于管理服务外部访问的 API 对象,典型的访问方式是 HTTP 和 HTTPS.Ingress 可以提供七层负 ...

  • Jenkins持续集成

    时间 主题 8.13(周二)14:00 WebDriver鼠标键盘操作 8.14(周三)20:00 Jenkins持续集成 在传统的瀑布开发模型中,是所有人写好代码之后提交版本管理工具,然后统一进行合 ...

  • Docker版Jenkins持续集成

    随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火,如何能再不断变化的 ...

  • 持续集成之 Jenkins 的安装与配置(一)

    一.持续集成的概念 Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins是基于 Java 开发的一种持续集成工具,用于监控持续重复的工作,功能包 ...

  • 持续集成之 Jenkins 配置基于角色的项目权限管理(五)

    一.前言 Jenkins是个好东西,开发运维测试的老江湖应该都听过,在此我就不再多做介绍jenkins是个什么东西了. jenkins自身的权限管理,无法实现用户指定显示视图或者视图中指定的jobs, ...

  • 持续集成之 Jenkins 如何通过 Gitlab 上的权限认证(三)

    一.背景 之前的项目是 public 的,如果我们在 gitlab上面把它修改成 private,然后再次打开配置,就可能会出现下面的错误,两种协议都会进行报错. 名称 IP 备注 Jenkins 1 ...

  • 持续集成 Jenkins +Gitlab + SSH 自动发布 HTML 代码

    一.整体流程 二.Jenkins 配置 2.1.首先安装插件 Gitlab Hook Plugin GitLab Plugin Publish Over SSH 2.2.配置目标服务器 系统管理 -- ...

  • 使用Jenkins实现项目持续集成部署

    十多年前,敏捷开发人员开始拥抱并促进测试驱动的开发和持续集成(CI).利用这些技术,只要开发人员将源代码检查到源存储库中,我们就可以自动构建源代码,执行详尽的单元测试套件以确保应用程序正常运行.许多测 ...

  • 一种云计算技术在配网监控系统持续集成方案中的运用

    许昌许继软件技术有限公司的研究人员王少鹏.杨迎春.丁博.贾亚楠.梁鹏威,在2020年第9期<电气技术>杂志上撰文,阐述了一种云计算服务技术在电力监控系统持续集成方案中的应用.结合云计算技术 ...

  • 让糖尿病、高血压等常见病闻风丧胆的13种...

    让糖尿病.高血压等常见病闻风丧胆的13种联合用药方案,家庭健康好帮手!看到了赶快收藏!   1.缬沙坦胶囊+尼群地平片---家庭健康好帮手---高血压   2.辛伐他汀片+降脂减肥片---家庭健康好帮 ...