我有以下内容.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 个管道而不是一个(引入了一个分离的管道)。
有人可以帮助我错过什么吗?