持续集成和交付工具(CI/CD)在现代开发流程中显著提高了构建、测试和部署的效率。常见的CI/CD工具包括 Jenkins、GitLab CI等。今天推荐一款开源免费的CICD软件 -- Arbess
1. 主要功能
通过流水线设计、任务管理、流水线执行、测试报告和统计分析五个方面来简单了解Arbess的主要功能。
1.1 流水线设计
用户灵活的设计流水线,支持串行和并行执行,触发设置,全局变量,后置处理等功能以适应多样化的工作流程需求。
- 支持串行任务,并行任务
支持创建并行或串行任务,使得用户可以根据具体需求灵活选择任务执行方式,从而优化流水线的效率和响应速度。
- 支持配置触发设置
提供灵活的触发配置选项,包括 定时触发 和 周期触发,便于自动化任务的精准调度。
- 配置变量
提供灵活的变量配置功能,允许用户定义全局变量并在整个流水线中复用,不同任务中可以使用相同的变量,减少出错风险。
- 配置后置处理
提供强大的后置处理功能,允许用户在任务执行完成后进行消息通知和自定义脚本处理。
1.2 任务管理
流水线支持几十种不同的任务,源码,代码扫描,测试,部署等全方面覆盖。
- 源码
流水线支持多种源码,支持是市面上常用版本管理工具,并且集成了GitLab、GitHub、Gitee、GitPuk等。
支持类型 | 说明 |
通用Git | 支持Git协议 |
Gitee | 集成Gitee |
GitHub | 集成GitHub |
GitLab | 集成GitLab |
GitPuk | 集成GitPuk |
Svn | 支持Svn协议 |
- 代码扫描
流水线支持多种代码扫描,并且内置了spotbugs代码扫描,无需额外配置,可直接使用。
支持类型 | 说明 |
SpotBugs-Java代码扫描 | 内置SpotBugs-Java代码扫描工具 |
SonarQube | 集成SonarQube代码扫描 |
- 测试
集成了TestHubo自动化测试,并对单元测试结果进行格式化处理。
支持类型 | 说明 |
TestHubo自动化测试 | 集成TestHubo自动化测试 |
单元测试 | 支持Mavne单元测试 |
- 构建
集成了市面上主要语言的使用的构建工具,Maven,npm,docker等。
支持类型 | 说明 |
Maven | 支持Maven构建 |
npm | 支持npm构建 |
Docker | 支持Docker构建 |
- 拉取制品
可以拉取多种语言的制品,同时集成了多种第三方制品管理工具。
支持类型 | 说明 |
Maven | 支持Maven拉取 |
npm | 支持npm拉取 |
Docker | 支持Docker拉取 |
Hadess | 支持拉取Hadess的制品 |
Nexus | 支持拉取Nexus的制品 |
SSH | 支持SSH拉取 |
- 推送制品
可以推送多种语言的制品,同时集成了多种第三方制品管理工具。
支持类型 | 说明 |
Maven | 支持Maven推送 |
npm | 支持npm推送 |
Docker | 支持Docker推送 |
Hadess | 支持推送到Hadess |
Nexus | 支持推送到Nexus |
SSH | 支持SSH推送 |
- 部署
多种部署方式支持,同时支持,Docker部署,K8s集群部署。
支持类型 | 说明 |
自定义部署 | 支持自定义部署 |
主机部署 | 支持部署到主机上 |
Docker部署 | 支持部署到Docker环境中 |
K8s集群部署 | 支持部署到K8s集群中 |
- 部署策略
多种部署策略支持,蓝绿发布,滚动发布,金丝雀发布等,这些策略能够有效减少系统升级对用户的影响,保证部署过程的平稳和高效。
支持类型 | 说明 |
蓝绿部署 | 支持蓝绿部署模式 |
滚动部署 | 支持滚动模式部署 |
金丝雀模式 | 支持金丝雀模式部署 |
1.3 流水线执行
选择不同的Agent执行流水线,同时支持实时查看流水线的运行信息。
- 分布式执行
流水线支持配置不同的Agent在不同主机上执行不同的流水线,能够应对高负载的业务需求,确保系统在高并发场景下依然保持稳定和高效。
- 查看历史
可以在历史界面查看流水线的运行记录,同时支持个维度来快速定位所需历史,如:名称模糊查询,执行人,执行方式,运行状态等。
- 查看运行状态
让用户可以随时查看流水线中每个任务的运行信息,任务时间,运行方式,执行人,以及任务的最终运行结果等关键数据,能帮助团队快速识别问题并进行调整,确保整体流程的顺利进行。
- 查看日志详情
支持查看每个任务的详细日志输出,帮助用户实时监控任务执行的过程和结果。通过直观的日志界面,可以快速获取任务的运行状态、错误信息和调试信息,从而及时发现并解决问题。
1.4 测试报告
涵盖代码质量分析、代码扫描、单元测试及自动化测试结果,帮助用户实时掌握代码的健康状况,满足不同用户对代码可靠性和稳定性的需求。
- 代码扫描
集成代码质量分析工具,对代码进行全面扫描,识别潜在问题和优化空间,可以检测出潜在的漏洞、编码规范的偏差和性能瓶颈等问题。
- 单元测试
支持查看每个单元测试的详细信息,包括测试用例的执行结果、具体用例的执行信息,成功,失败,错误的用例等,帮助开发者精确定位问题。
- 自动化测试
集成 TestHubo 自动化测试平台,实现多维度的测试覆盖。TestHubo 支持功能测试、性能测试等多种类型等。
1.5 统计分析
Arbess支持流水线运行统计以及结果统计查看,方便管理者查看流水线的统计信息。
- 运行统计
可以从多个方面查看流水线的运行统计信息,如时间段,平均执行时长等,同时支持查看近7天,25天,30天,90天的统计信息。
- 结果统计
可以从多个维度查看流水线的结果统计信息,如结果数量,结果概率等,同时支持查看近7天,25天,30天,90天的统计信息。
2. 产品优势
通过简单的优势来了解Arbess,快速了解其独特之处和应用价值。
2.1 任务多样性
- 几十种任务支持
源码,代码扫描,测试,构建,拉取制品,推送制品,部署等都支持。
- 支持并行串行任务
支持任务并行串行执行。
- 任务自由组合
任务随意组合,没有任何限制。
- 支持任务单独运行
每个任务可以单独运行,随意使用。
2.2 简洁易用
- 界面简单
界面简洁,结构清晰,一目了然。
- 安装配置简单
下载安装即可使用,不需要任何额外配置。
2.3 安全可靠
- 多层级权限控制
应用级权限,系统级权限,项目级权限,全方面保护应用的安全。
- 日志审计
实时记录任何变动,追溯到个人,什么时间操作了什么。
- 自动备份与恢复
数据误删,数据损害,定时备份,实时恢复。
2.4 多版本,多终端
- 多版本支持
提供公有云和私有云版本。
- 多平台支持
支持Windows、Mac、Linux、Docker等平台。
2.5 开源免费
Arbess提供了开源的源码,可以在Gitee,GitHub上面直接下载,使用。
开源地址:
3. 下载与使用
如果在安装过程中遇到了问题,Arbess提供了丰富的文档和教程,帮助用户轻松解决问题。前往Arbess文档中心,获得详细的配置说明和常见问题解答,同时也可以随时向活跃的社区寻求帮助!
- 演示
- 下载
- 使用