概念
| 术语 | 说明 |
|---|---|
| pipeline | 流水线 |
| stage | 阶段 |
| job | 任务 |
| .gitlab-ci.yml | CI/CD配置文件 |
| GitLab Runner | 负责运行job的Agent。使用前需要先安装注册 |
| Executor | 注册Runner时,需要选择一个Executor作为运行环境,如 Docker、K8s1 2 |
| 预置变量 | CI/CD预置变量,每个流水线都有这些变量 |
Pipeline 类型
- Basic pipelines:基本流水线,同一 Stage 内并发执行,不同 Stage 顺序执行。

- DAG pipelines:有向无环流水线,使用
needs指明 Job 间的依赖关系,优化并发流程。

- Merge request pipelines:又称 branch pipeline,提交 MR 的时候触发,需要配合
only或rules使用。
| |
如图,提交的 MR 只触发了 build-job:

Merged results pipelines:代码合并时触发的流水线。可以在 Projects > Settings > General 中配。
Scheduled pipelines:周期执行的流水线。
Job
Job 被 Runner 执行,Job 之间是相互独立的。Runner 越多,能支持并发执行的 Job 数越大。
Job 类型:
- Hide Job:名字以(.)开头的 Job 不会被 GitLab CI/CD 执行
| |
- Deployment Job:包含
environment、action: start的 Job 是用来将代码部署到环境
| |