gitlab cicd 模块解释

gitlab版本是:不详😓

在项目的左边栏可以看到"小火箭CI/CD"

这里有几个模块,这几个模块的功能:

1/ pipelines 顾名思义流水线,经过触发后执行。流水线包括一些阶段,比如:

  • ".pre" 这个不知道,应该是一些前置的逻辑阶段,必须检查一些环境变量啊依赖啊啥的,只是在配置说明里见到了。

  • build 编译阶段,确保没有编译问题,有时我们会盲目根据经验去直接修改直接发布,但有未考虑到的编译上的细节,这时候编译阶段可能能发现这些点。

  • test 测试阶段,可能有一些单测用例需要跑通,对于tdd开发模式来说,这个阶段是能否走下去的重要环节。

  • deploy 发布部署阶段,这里就要cd了。

  • ".post" 这个不知道,应该是一些善后的逻辑阶段,只是在配置说明里见到了。

他们是顺序执行的,每当其中一个阶段失败,流水线则中断。

2/ editor 用来编辑cicd配置的。名字默认是:.gitlab-ci.yml。

点击editor可以编辑.gitlab-ci.yml。包括pipeline的阶段的增减,每个阶段要做的job,都可以在这里编辑。

3/ jobs 是pipeline的执行单元。比如编译/测试/部署每个阶段要做什么事儿。

它一般以脚本为载体,比如在编译阶段我们有2个job,第一个job是下载依赖,第二个job是进行build。每个阶段可以拆成很细的jobs,这样有利于更细粒度的了解各个环节的状态。

每个阶段可以有多个jobs,同阶段的jobs可以并行执行,不同阶段的jobs需要按阶段执行。

4/ artifacts 是job构建的产物,每个job执行完之后,可能是一份报告结果,可能是一个bin。

5/ schedules 是调度器,可以规划一些重复执行一些pipeline,比如每晚12点执行一次。

这几个组件的关系如下:

复制代码
editor(编辑) → .gitlab-ci.yml(定义) → jobs(任务) + artifacts(产物) → 组成 pipelines(流水线) → 可被 schedules(定时任务)触发
相关推荐
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包2 小时前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
MicrosoftCloud3 小时前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
꯭自꯭闭꯭4 小时前
达梦事物特性及MVCC
linux·运维·数据库
亚川楼宇自控系统数据中心厂家5 小时前
实验室智能化管理系统|人环物智一体化管控平台
运维
zmsup6 小时前
Agent 上下文调优:结合 OpsArk 运维智能体,设计模型每一步真正需要的信息
运维·agent·上下文压缩·运维智能体·上下文调优
吴声子夜歌9 小时前
Nginx应用与运维——Nginx负载均衡应用实战(二)
运维·nginx·负载均衡
lisanmengmeng9 小时前
NRPE 添加命令(一)
linux·运维·服务器
pt10439 小时前
CML网络仿真入门-2:使用CML模拟网络实验环境
运维·网络协议
沫璃染墨10 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理