概念
术语 | 说明 |
---|---|
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 是用来将代码部署到环境
|
|