Arbess基础教程-创建流水线
Arbess(谐音阿尔卑斯) 是一款开源免费的 CI/CD 工具,本文将介绍如何使用 Arbess 配置你的第一条流水线,以快速入门上手。
1. 创建流水线
根据不同需求来创建不同的流水线。
1.1 配置基本信息
配置流水线的基本信息,如分组,环境,权限,人员等。
属性说明:
| 字段 | 说明 |
| 流水线名称 | 流水线名称清晰地标识项目或对象,不能重复以及输入特别字符。 |
| 流水线分组 | 流水线分组便于组织和管理流水线。 |
| 流水线环境 | 流水线环境便于组织和管理流水线。 |
| 流水线权限 | 私有:只有创建者,以及流水线成员可以看到。 全局:系统内的所有人都可看到,查看。 |
1.2 选择不同的模版
Arbess提供了丰富的模板,使用者可以根据不同的需求选择不同的模板。

2. 配置流水线
配置流水线的任务,根据不同的需求添加不同的任务,源码,测试,部署,代码扫描,推送制品,拉取制品等几十种任务支持。
2.1 配置源码
流水线支持配置多种源码仓库,通用Git、Gitee、GitLab、GitHub、GitPuk、Svn等。
点击新阶段 --> 点击源码 --> 选择通用Git

属性说明:
| 字段 | 说明 |
| git地址 | git克隆的url |
| 分支 | 选择克隆的分支 |
| 凭证 | 远程仓库的效验凭证。 |
2.2 配置代码扫描
Arbess集成了多种代码扫描工具,SonarQube代码扫描、SpotBugs-Java代码扫描等
点击新阶段 --> 点击代码扫描 --> 选择SpotBugs-Java代码扫描任务

属性说明:
| 字段 | 说明 |
| 扫描路径 | 默认为${DEFAULT_CODE_ADDRESS},也可输入绝对路径。 |
| 调试模式 | 可以输出更加详细的日志。 |
| 扫描断言 | 是否扫描代码中的断言。 |
| 扫描等级 | 等级越高,扫描的深度越大。 |
| 错误级别 | 等级越高,错误校验越严格。 |
2.3 配置构建
Arbess支持多种语言构建,npm、Maven、Docker等构建方式来构建出制品。
点击新阶段 --> 点击构建 --> 选择Maven构建
属性说明:
| 字段 | 说明 |
| 模块地址 | 默认为${DEFAULT_CODE_ADDRESS},也可输入绝对路径。 |
| 执行命令 | 执行的构建命令maven的默认命令为mvn clean package。 |
2.4 配置部署
Arbess支持多种部署方式来满足用户不同的需求,自定义部署,主机部署,Docker部署,K8s集群部署等。
点击新阶段 --> 点击部署 --> 选择主机部署。

属性说明:
| 字段 | 说明 |
| 部署方式 | 可选择自定义部署或者结构化部署。 |
| 主机地址 | 需要部署在那个主机上边。 |
| 部署文件 | 默认为${DEFAULT_CODE_ADDRESS},也可输入绝对路径。 |
| 部署文件匹配规则 | 配置部署文件,支持正则表达式。 |
| 部署位置 | 需要把文件部署在服务器的那个位置上。 |
| 部署命令 | 需要对部署文件进行怎样的操作。 |
| 部署策略 | 可选择每一批暂停部署或第一批暂停部署这两种方式。 |
| 部署主机数量 | 默认为1,如果有多个主机,可选择多个主机部署。 |
2.5 删除流水线配置
鼠标放在任务上面 --> 点击删除按钮 --> 点击确定即可删除任务配置,删除后无法恢复

3. 运行流水线
运行流水线,并实时查看流水线运行信息。
3.1 运行
配置完成,点击左上角运行即可运行流水线
- 选择执行端
可以选择在不同的agent中执行。
3.2 查看运行状态
可以实时查看流水线运行信息,点击任务的日志按钮可以查看任务的具体输出的日志。

3.3 查看日志详情
Arbess支持查看具体任务日志详情,可以看到任务的具体日志输出。
3.4 查看测试报告
可以查看代码的具体扫描结果,各种Bug数量,级别,bug的优先级,以及出现bug的原因,具体行数等信息。

属性说明:
| 字段 | 说明 |
| 一级问题 | 较大可能可以引起Bug的问题。 |
| 二级问题 | 警告信息,忽略有小概率引发Bug。 |
| 三级问题 | 可忽略的问题。 |
| 包路径 | 问题出现的包路径。 |
| 优先级 | 优先级越小,问题越严重。 |
| Bug类型 | 出现的Bug类型。 |
4. 管理流水线
管理流水线的基本信息,人员,权限,角色,消息通知等信息。
4.1 成员管理
可以将不同的成员拉取流水线,让多个人来共同管理,维护流水线。
4.2 权限管理
可以为不同成员配置不同的权限。

属性说明:
| 字段 | 说明 |
| 角色类型 | 超级管理员:流水线创建者,唯一,不可添加,权限不可更改。 管理员:流水线管理员。 普通用户:普通用户。 |
| 创建方式 | 系统内置:流水线默认,不可删除。 自定义:用户额外添加的角色 |
| 成员类型 | 可添加用户,用户组,部门 |
4.3 消息通知
用户可以配置消息提醒
属性说明:
| 字段 | 说明 |
| 事件 | 事件触发时会发送消息提醒。 |
| 通知方式 | 配置当前事件的通知方式,可配置,企业微信,邮箱等通知方式。 |
| 通知成员 | 可添加用户,用户组,部门 |
4.4 基本信息
- 编辑流水线信息
编辑流水线基本信息,流水线名称,分组,环境,权限等。
属性说明:
| 字段 | 说明 |
| 流水线名称 | 流水线名称清晰地标识项目或对象 |
| 流水线分组 | 流水线分组便于组织和管理流水线 |
| 流水线环境 | 流水线环境便于组织和管理流水线 |
| 流水线权限 | 私有:只有创建者,以及流水线成员可以看到。 全局:所有人都可看到 |
- 删除流水线
点击左下角 --> 点击流水线信息 --> 点击流水线删除 --> 点击删除按钮 --> 输入流水线名称点击确定即可,流水线删除后不可恢复。
5. 帮助与支持
如果在安装过程中遇到了问题,可以查阅文档或进入社区进行反馈交流。
文档:
Arbess - 文档 (tiklab.net)
社区:
TikLab - 社区
相关文章:
Arbess基础教程-创建流水线
Arbess(谐音阿尔卑斯) 是一款开源免费的 CI/CD 工具,本文将介绍如何使用 Arbess 配置你的第一条流水线,以快速入门上手。 1. 创建流水线 根据不同需求来创建不同的流水线。 1.1 配置基本信息 配置流水线的基本信息,如分组,环境&…...
科普书《从一到无穷大》的科普知识推翻百年集论
科普书《从一到无穷大》的科普知识推翻百年集论 黄小宁 “我们给两组无穷大数列中的各个数一一配对,如果最后这两组都一个不剩,这两组无穷大就是相等的;如果有一组还有些数没有配出去,这一组就比另一组大些,或者说强些…...
【键盘识别】实例分割
第一步 键盘检测 方案一 canny边缘检测 canny边缘检测检测结果不稳定,容易因为复杂背景或光线变换检测出其他目标。 如图是用canny边缘检测方法标出的检测出的边缘的四个红点。 参考的是这篇文章OpenCV实战之三 | 基于OpenCV实现图像校正_opencv 图像校正-CSDN博客 方案二…...
25/2/7 <机器人基础>雅可比矩阵计算 雅可比伪逆
雅可比矩阵计算 雅可比矩阵的定义 假设我们有一个简单的两个关节的平面机器人臂,其末端执行器的位置可以表示为: 其中: L1 和 L2 是机器人臂的长度。θ1 和 θ2是关节的角度。 计算雅可比矩阵 雅可比矩阵 JJ 的定义是将关节速度与末…...
apisix的real-ip插件使用说明
k8s集群入口一般都需要过负载均衡,然后再到apisix。 这时候如果后台业务需要获取客户端ip,可能拿到的是lb或者网关的内网ip。 这里一般要获取真实ip需要做几个处理。 1. 负载均衡上,一般支持配置获取真实ip参数,需要配置上。然…...
位图的深入解析:从数据结构到图像处理与C++实现
在学习优选算法课程的时候,博主学习位运算了解到位运算的这个概念,之前没有接触过,就查找了相关的资料,丰富一下自身,当作课外知识来了解一下。 位图(Bitmap)是一种用于表示图像的数据结构&…...
Python实现GO鹅优化算法优化支持向量机SVM分类模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后关注获取。 1.项目背景 随着信息技术的迅猛发展,数据量呈爆炸式增长,如何从海量的数据中提取有价值…...
Deno vs Node.js:性能对比深度解析
1. 引言 Deno 和 Node.js 都是基于 V8 引擎的 JavaScript 运行时环境,然而它们在架构、模块管理、安全性和性能方面存在显著差异。Deno 由 Node.js 的原始作者 Ryan Dahl 开发,旨在解决 Node.js 设计上的一些问题,比如包管理、安全模型和 Ty…...
我用AI做数据分析之数据清洗
我用AI做数据分析之数据清洗 AI与数据分析的融合效果怎样? 这里描述自己在使用AI进行数据分析(数据清洗)过程中的几个小故事: 1. 变量名的翻译 有一个项目是某医生自己收集的数据,变量名使用的是中文,分…...
备战蓝桥杯:双指针(滑动窗口)算法之逛花展
P1638 逛画展 - 洛谷 | 计算机科学教育新生态 这道题我们只要用一个kind和一个mp[N]的数组就能解决了 我们的解法1就是暴力枚举,先固定2,从2开始找连续的满足所有种类的最短的子数组,然后固定5,3,1,3&…...
【sqlite】python操作sqlite3(含测试)
个人小项目或者小团队,sqllite很适用,数据库封装操作如下 #!/usr/bin/env python # -*- coding: utf-8 -*- # Time : 2025-02-08 13:57 # Author : duxiaowei # File : connect_sqllite.py # Software: PyCharm """ sqllite操作, …...
mybatis 是否支持延迟加载?延迟加载的原理是什么?
1. MyBatis 是否支持延迟加载? 是的,MyBatis 支持延迟加载。延迟加载的主要功能是推迟数据加载的时机,直到真正需要时再去加载。这种方式能提高性能,尤其是在处理关系型数据时,可以避免不必要的数据库查询。 具体来说…...
collabora online+nextcloud+mariadb在线文档协助
1、环境 龙蜥os 8.9 docker 2、安装docker dnf -y install dnf-plugins-core dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sed -i shttps://download.docker.comhttps://mirrors.tuna.tsinghua.edu.cn/docker-ce /etc/yum.repos.…...
深度学习中的Checkpoint是什么?
诸神缄默不语-个人CSDN博文目录 文章目录 引言1. 什么是Checkpoint?2. 为什么需要Checkpoint?3. 如何使用Checkpoint?3.1 TensorFlow 中的 Checkpoint3.2 PyTorch 中的 Checkpoint3.3 transformers中的Checkpoint 4. 在 NLP 任务中的应用5. 总…...
字符串高频算法:无重复字符的最长子串
题目 3. 无重复字符的最长子串 - 力扣(LeetCode) 解题思路 思路 方法: 滑动窗口 [!简单思路] [^1]以示例一中的字符串 abcabcbb 为例,找出从每一个字符开始的,不包含重复字符的最长子串,其中最长的那个字符串即为答…...
用深度学习模型构建海洋动物图像分类保姆教程
使用深度学习模型构建深度学习海洋动物图像分类模型的完整步骤如下,分为关键阶段和详细操作说明: 1. 数据准备与预处理 1.1 数据集组织 按类别分文件夹存储图像,例如:dataset/train/class1/class2/...val/class1/class2/...test…...
51单片机俄罗斯方块计分函数
/************************************************************************************************************** * 名称:scoring * 功能:计分 * 参数:NULL * 返回:NULL * 备注:采用非阻塞延时 ****************…...
Android开发获取缓存,删除缓存
Android开发获取缓存,删除缓存 app设置中往往有清理缓存的功能。会显示当前缓存时多少,然后可以点击清理缓存 直接上代码: object CacheHelper {/*** 获取缓存大小* param context* return* throws Exception*/JvmStaticfun getTotalCache…...
npm无法加载文件 因为此系统禁止运行脚本
安装nodejs后遇到问题: 在项目里【node -v】可以打印出来,【npm -v】打印不出来,显示npm无法加载文件 因为此系统禁止运行脚本。 但是在winr,cmd里【node -v】,【npm -v】都也可打印出来。 解决方法: cmd里可以打印出…...
NLP_[2]-认识文本预处理
文章目录 1 认识文本预处理1 文本预处理及其作用2. 文本预处理中包含的主要环节2.1 文本处理的基本方法2.2 文本张量表示方法2.3 文本语料的数据分析2.4 文本特征处理2.5数据增强方法2.6 重要说明 2 文本处理的基本方法1. 什么是分词2 什么是命名实体识别3 什么是词性标注 1 认…...
知识库升级新思路:用生成式AI打造智能知识助手
在当今信息爆炸的时代,企业和组织面临着海量数据的处理和管理挑战。知识库管理系统(Knowledge Base Management System, KBMS)作为一种有效的信息管理工具,帮助企业存储、组织和检索知识。然而,传统的知识库系统往往依…...
蚂蚁爬行最短问题
初二数学问题记录 分析过程 考点:2点之间直线最短。 思考过程:将EBCF以BC为边翻折,EF边翻折后为,则A为蚂蚁需要爬行的最小距离。...
【电机控制器】STC8H1K芯片——低功耗
【电机控制器】STC8H1K芯片——低功耗 文章目录 [TOC](文章目录) 前言一、芯片手册说明二、IDLE模式三、PD模式四、PD模式唤醒五、实验验证1.接线2.视频(待填) 六、参考资料总结 前言 使用工具: 1.STC仿真器烧录器 提示:以下是本…...
【专题】2024-2025人工智能代理深度剖析:GenAI 前沿、LangChain 现状及演进影响与发展趋势报告汇总PDF洞察(附原数据表)
原文链接:https://tecdat.cn/?p39630 在科技飞速发展的当下,人工智能代理正经历着深刻的变革,其能力演变已然成为重塑各行业格局的关键力量。从早期简单的规则执行,到如今复杂的自主决策与多智能体协作,人工智能代理…...
SAP-ABAP:SAP的第一行REPORT后面后缀作用详解
在SAP ABAP中,REPORT 语句是定义报表程序的核心语句,其后可以跟多个后缀(参数),用于控制报表的行为和属性。以下是常见的 REPORT 后缀及其作用的详解: 程序名称 • 语法:REPORT <program_nam…...
25/2/8 <机器人基础> 阻抗控制
1. 什么是阻抗控制? 阻抗控制旨在通过调节机器人与环境的相互作用,控制其动态行为。阻抗可以理解为一个力和位移之间的关系,涉及力、速度和位置的协同控制。 2. 阻抗控制的基本概念 力控制:根据感测的外力调节机械手的动作。位置…...
java-list深入理解(流程图)
List源码学习: 此篇文章使用流程图和源码方式,理解List的源码,方便记忆 核心逻辑流程图: #mermaid-svg-BBrPrDuqUdLMtHvj {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-BBrPrDuqUdLMtHvj .error-icon{fill:#…...
Sparse4D v3:推进端到端3D检测和跟踪
论文地址:2311.11722 (arxiv.org) 代码地址:HorizonRobotics/Sparse4D (github.com) 在自动驾驶感知系统中,3D 检测和跟踪是两项基本任务。本文在 Sparse4D 框架的基础上更深入地探讨了这一领域。作者引入了两个辅助训练任务(Temp…...
LeetCode781 森林中的兔子
问题描述 在一片神秘的森林里,住着许多兔子,但是我们并不知道兔子的具体数量。现在,我们对其中若干只兔子进行提问,问题是 “还有多少只兔子与你(指被提问的兔子)颜色相同?” 我们将每只兔子的…...
M系列/Mac安装配置Node.js全栈开发环境(nvm+npm+yarn)
一、安装 nvm(Node Version Manager) 打开终端,使用 curl 在 M 系列 Mac 上安装 nvm: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash对于非 M 系列的 Intel Mac,上述命令同样适…...
