为什么我的gitlab管道中省略了一个阶段?
我有以下gitlab配置:为什么我的gitlab管道中省略了一个阶段?,gitlab,Gitlab,我有以下gitlab配置: stages: - test - stage1 - stage2 test: rules: - if: $CI_PIPELINE_SOURCE == "web" || $CI_PIPELINE_SOURCE == "schedule" when: never stage: test script: - 'echo "Running Test"' my_s
stages:
- test
- stage1
- stage2
test:
rules:
- if: $CI_PIPELINE_SOURCE == "web" || $CI_PIPELINE_SOURCE == "schedule"
when: never
stage: test
script:
- 'echo "Running Test"'
my_stage1:
stage: stage1
script:
- 'echo "Running stage 1"'
my_stage2:
stage: stage2
script:
- 'echo "Running stage 2"'
我创建了一个合并请求。我希望在这种情况下所有三个阶段都会运行,但第一个阶段不会运行。为什么?如何修复它?关于这一点的文件很不清楚
CI\u PIPELINE\u SOURCE
的内容是merge request event
查看文档,当您使用时:never
它需要后跟一个特定的success子句,以便在其他情况下运行,例如:
test:
rules:
- if: $CI_PIPELINE_SOURCE == "web" || $CI_PIPELINE_SOURCE == "schedule"
when: never
- when: on_success
谢谢你的建议。但是,我在文档中看不到它。到底是什么短语记录了这一点?而且,第一阶段似乎运行了两次。这是gitlab中的一个bug吗?如果您查找“在所有其他情况下,作业被添加到管道中,并带有时间:on_success”,您应该会找到它。不知道为什么它现在运行了两次。我必须承认,我觉得吉特拉布奇有点像一门黑暗的艺术。