Jenkins和Arbess,开源免费CI/CD工具选型指南

在CICD工具的选择中,Jenkins作为一个老牌的CICD工具是广为人知的,Arbess作为一款新兴的国产开源免费的CICD工具,两款工具各有特点。本文将从安装配置、功能特性、用户体验等几个方面对两款软件进行详细对比。

1、安装配置

|--------|----------------------------------|----------------------------------|
| 项目 | Jenkins | Arbess |
| 安装难度 | 需要预装Java环境,需要手动配置端口和后台服务。 | 一键安装,私有部署不同环境均支持傻瓜式一键安装。 |
| 配置难度 | 需要配置国内镜像源,安装核心插件 | 零配置,安装后即刻可用,无需额外配置。 |
| 支持操作系统 | 支持Windows、macOS、Linux、Docker等系统。 | 支持Windows、MacOS、Linux、Docker等系统。 |

2、功能对比

Arbess和Jenkins都是持续集成与交付(CICD)工具。下面进行功能对比,主要针对两个平台的功能进行详细的对比。

|-------|-----------|-----------------|--------|
| 模块 | 功能 | Jenkins(依靠插件支持) | Arbess |
| 流水线管理 | 流水线管理 | ✔ | ✔ |
| | 用户管理 | ✔ | ✔ |
| | 权限管理 | ✔ | ✔ |
| 流水线设计 | 源码任务 | ✔ | ✔ |
| | 构建 | ✔ | ✔ |
| | 部署 | ✔ | ✔ |
| | 代码扫描 | ✔ | ✔ |
| | 接口自动化测试 | ✖ | ✔ |
| | SSH上传、下载 | ✔ | ✔ |
| | 制品库上传、下载 | ✔ | ✔ |
| | 任务自由组合 | ✔ | ✔ |
| | 并行任务 | ✔ | ✔ |
| | 串行任务 | ✔ | ✔ |
| 流水线执行 | 全局变量 | ✔ | ✔ |
| | 临时变量 | ✔ | ✔ |
| | 分布式运行 | ✔ | ✔ |
| | 定时执行 | ✔ | ✔ |
| | Webhook触发 | ✔ | ✔ |
| | 站内信通知 | ✔ | ✔ |
| | 邮箱通知 | ✔ | ✔ |
| | 运行历史 | ✔ | ✔ |
| | 回滚 | ✔ | ✔ |
| 测试报告 | 代码扫描报告 | ✔ | ✔ |
| | 接口自动化测试报告 | ✖ | ✔ |
| 统计 | 运行统计 | ✖ | ✔ |
| | 结果统计 | ✖ | ✔ |
| 发布计划 | 发布计划 | ✔ | ✔ |
| 系统设置 | 用户管理 | ✔ | ✔ |
| | 权限管理 | ✔ | ✔ |
| | 消息通知方案 | ✖ | ✔ |
| | 消息配置 | ✔ | ✔ |
| | 数据备份还原 | ✔ | ✔ |
| | IP黑白名单 | ✔ | ✔ |
| | 日志管理 | ✔ | ✔ |

  • 流水线管理

Jenkins-项目管理

Arbess项目管理

  • 流水线设计

Jenkins流水线设计

Arbess流水线设计

添加任务

设计任务

  • 流水线执行

Jenkins执行流水线

查看运行历史

查看日志详情

3、系统集成

|---------|-----------------------------------|----------------------------------------------|
| 项目 | Jenkins | Arbess |
| 代码扫描 | 与代码扫描工具SonarQube集成,流水线运行调用代码扫描。 | 与代码扫描工具(SonarQube、SourceFare)集成,流水线运行调用代码扫描。 |
| 自动化测试 | 与自动化测试Selenium集成,流水线运行调用Web自动化测试。 | 与接口自动化测试工具PostIn集成,支持流水线运行调取自动化测试任务。 |
| 账号体系 | 与LDAP集成,实现LDAP账号登录 | 与LDAP、企业微信、钉钉集成,同步用户并登录 |
| IM消息集成 | 支持邮箱、WebHook通知 | 支持站内信、邮箱、企业微信通知 |
| 导入导出 | 支持导入、导出YAML文件 | 支持导出YAML文件 |
| OpenApi | 未内置完整的OpenAPI接口 | 提供完整的OpenAPI接口 |

Arbess集成

4、用户体验

|--------|----------------------|--------------------------|
| 项目 | Jenkins | Arbess |
| 安装配置 | 安装简单,但插件安装慢 | 一键式安装,安装便捷,零配置 |
| UI交互体验 | WEB接口风格老旧,复杂配置需要来回切换 | 界面干净简洁,用户体验较好,支持切换个性化主题。 |
| 上手难度 | 深度依靠插件,界面灵活但上手难度高 | 所见即所得,配置简单,上手难度低 |

Arbess任务

Jenkins插件

5、开源免费

|--------|---------|--------|
| 项目 | Jenkins | Arbess |
| 是否开源免费 | 开源免费 | 开源免费 |

6、服务支持

|------|--------------------|------------------------------------------------------|
| 项目 | Jenkins | Arbess |
| 服务支持 | 国际化技术支持,出现问题处理难度高。 | 本土化技术支持,7*24小时服务热线;提供工单系统快速反馈和响应问题;企业专属IM群,一对一服务支持。 |

深度体验使用之后有一些基本的观点:

Jenkins

  • 插件功能比较强大,但兼容性不太好
  • 有些过于重
  • 交互体验不够友好
  • 社区生态相对比较成熟

Arbess

  • 各种任务基本内置,不存在兼容性问题
  • 支持一键安装,零配置,比较轻量
  • 交互设计比较简洁,上手难度小
  • 社区生态还不太成熟,还需要时间积累
相关推荐
池央20 小时前
CANN oam-tools 诊断体系深度解析:自动化信息采集、AI Core 异常解析与 CI/CD 流水线集成策略
人工智能·ci/cd·自动化
池央1 天前
CANN GE 深度解析:图编译器的核心优化策略、执行流调度与模型下沉技术原理
人工智能·ci/cd·自动化
3GPP仿真实验室1 天前
【Matlab源码】6G候选波形:OFDM-IM 增强仿真平台 DM、CI
开发语言·matlab·ci/cd
小Tomkk1 天前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
人间打气筒(Ada)1 天前
jenkins基于Pipeline发布项目
java·pipeline·jenkins·流水线·ci·cd·cicd
_运维那些事儿2 天前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
木童6622 天前
Ruo-Yi 项目 CI/CD 详细部署文档
ci/cd
爬山算法2 天前
Hibernate(85)如何在持续集成/持续部署(CI/CD)中使用Hibernate?
java·ci/cd·hibernate
狂野小青年2 天前
Jenkins如何添加全局凭证
运维·jenkins
吹牛不交税2 天前
gitea安装windows并实现CICD持续集成部署
ci/cd·gitea