.gitlab-ci.yml 文件的写法

stages

stages用来定义可以被job调用的stages。stages的规范允许有灵活的多级pipelines。

stages中的元素顺序决定了对应job的执行顺序:

1. 相同stage的job可以平行执行。

2. 下一个stage的job会在前一个stage的job成功后开始执行。

接下仔细看看这个例子,它包含了3个stage:

stages:

- build

- test

- deploy

首先,所有build的jobs都是并行执行的。

所有build的jobs执行成功后,test的jobs才会开始并行执行。

所有test的jobs执行成功,deploy的jobs才会开始并行执行。

所有的deploy的jobs执行成功,commit才会标记为success

任何一个前置的jobs失败了,commit会标记为failed并且下一个stages的jobs都不会执行。

这有两个特殊的例子值得一提:

如果.gitlab-ci.yml中没有定义stages,那么jobs stages 会默认定义为 build,test 和 deploy。

如果一个job没有指定stage,那么这个任务会分配到test stage。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容