仅在前一个阶段完成时运行管道阶段-gitlabci

时间:2020-07-15 16:48:53

标签: continuous-integration gitlab devops gitlab-ci continuous-deployment

我遇到了这种情况:

我在gitlab-ci管道中有3个阶段:

第一阶段旨在在主分支更改时触发并自动运行。

第二阶段只有在使用when: manual手动批准后才能运行。

现在,我希望第三阶段在第二阶段完成后自动运行。

我发现唯一有意义的是when: on_success,这是默认值。但是自从第一阶段完成后第三阶段开始运行(第二阶段尚未得到手动批准)之后,我没有得到预期的结果。

我如何达到该条件(第3阶段仅在第2阶段完成时才会触发)?

1 个答案:

答案 0 :(得分:1)

发生这种情况是因为您的手动作业(第二阶段)没有allow_failure: false

gitlab ci上的手动作业默认为allow_failure: true https://docs.gitlab.com/ee/ci/yaml/#allow_failure

如果将值设置为false,则gitlab ci将不会继续,直到此工作成功完成为止。