即使我的分支正在开发,我的管道仍然被跳过。有任何想法吗?语法似乎正确。
手动运行时我也收到错误“管道无法运行。管道被规则过滤掉”
# List of stages for jobs, and their order of execution
stages:
- validate
- build
# Variables set in the GitLab UI are not passed down to service containers.
# To set them, assign them to variables in the UI, then re-assign them in your .gitlab-ci.yml
variables:
COMMIT_BRANCH: ${CI_COMMIT_BRANCH}
workflow:
rules:
- if: $COMMIT_BRANCH == "develop"
when: always
validate-job:
stage: validate
script:
- echo "Validated"
build-job:
stage: build
##some job actions
script:
- echo "t"
# rules:
# - if: $CI_COMMIT_REF_NAME =~ /develop\/.*$/
# when: always
目前存在错误,它会阻止您的管道运行。
要使其正常工作,您应该直接在工作流程规则中使用
CI_COMMIT_BRANCH
变量:
workflow:
rules:
- if: $CI_COMMIT_BRANCH == "develop"
when: always
看起来与 gitlab 变量名同名
CI_COMMIT_BRANCH
导致了这个问题。
也许您应该能够通过拥有
different global variable name
来成功运行管道,如在服务容器中中所述
variables:
COMMIT_BRANCH: $CI_COMMIT_BRANCH
这应该允许管道在分支中触发时运行
develop
。
但是,尚不清楚为什么与 gitlab 变量名同名不起作用。