Gitlab 主分支流水线合并后不是 运行
Gitlab master branch pipeline is not running after merge
我有以下 .gitlab-ci.yml
:
stages:
- build
workflow:
rules:
- if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
variables:
ENVIRONMENT_TYPE: 'prod'
- if: $CI_COMMIT_REF_PROTECTED == 'true' && $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
variables:
ENVIRONMENT_TYPE: 'preprod'
- if: $CI_COMMIT_REF_PROTECTED == 'false'
variables:
ENVIRONMENT_TYPE: 'review'
- if: $CI_MERGE_REQUEST_ID
when: never
Compile:
stage: build
image: node
only:
- branches
script:
- yarn install
- yarn build
如果我的分支是 feature/xyz
,并且我推送,它 运行 就是所需的管道。但如果我合并,管道将不会在 master
分支上 运行。
我补充道:
- if: $CI_MERGE_REQUEST_ID
when: never
因为如果我推送到我的正常分支,它将 运行 2 个管道而不是一个(引入了一个独立的管道)。
有人可以帮助我缺少什么吗?
经过多方调查,原来我在问题中发的.gitlab-ci.yml
没有问题
一切都很完美。
事实证明,我在其中一个工作流中有 AUTO_STOP: 0
环境变量,它阻止了管道 运行。 (未记录的变量 https://docs.gitlab.com/search/?query=AUTO_STOP )
我能够重现此问题,并将此报告为一个问题 https://gitlab.com/gitlab-org/gitlab/-/issues/341713. Here is the reproduced merge https://gitlab.com/adham.sabry/pipeline-test/-/merge_requests/5,其中受保护的分支没有启动管道。
我希望这对您有所帮助,没有人会偶然发现这一点。
我有以下 .gitlab-ci.yml
:
stages:
- build
workflow:
rules:
- if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
variables:
ENVIRONMENT_TYPE: 'prod'
- if: $CI_COMMIT_REF_PROTECTED == 'true' && $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
variables:
ENVIRONMENT_TYPE: 'preprod'
- if: $CI_COMMIT_REF_PROTECTED == 'false'
variables:
ENVIRONMENT_TYPE: 'review'
- if: $CI_MERGE_REQUEST_ID
when: never
Compile:
stage: build
image: node
only:
- branches
script:
- yarn install
- yarn build
如果我的分支是 feature/xyz
,并且我推送,它 运行 就是所需的管道。但如果我合并,管道将不会在 master
分支上 运行。
我补充道:
- if: $CI_MERGE_REQUEST_ID
when: never
因为如果我推送到我的正常分支,它将 运行 2 个管道而不是一个(引入了一个独立的管道)。
有人可以帮助我缺少什么吗?
经过多方调查,原来我在问题中发的.gitlab-ci.yml
没有问题
一切都很完美。
事实证明,我在其中一个工作流中有 AUTO_STOP: 0
环境变量,它阻止了管道 运行。 (未记录的变量 https://docs.gitlab.com/search/?query=AUTO_STOP )
我能够重现此问题,并将此报告为一个问题 https://gitlab.com/gitlab-org/gitlab/-/issues/341713. Here is the reproduced merge https://gitlab.com/adham.sabry/pipeline-test/-/merge_requests/5,其中受保护的分支没有启动管道。
我希望这对您有所帮助,没有人会偶然发现这一点。