Gitlab CI job 运行ning on new tag 尽管规则说 运行 only on master
Gitlab CI job running on new tag despite rules say run only on master
我在管道中有这样的工作:
msi_build:
stage: Build
script:
- cd project_name
- ls -a
- wine python setup.py bdist_msi
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
- changes:
- /*.{py, html, css, yml, json}
tags:
- pywine
artifacts:
when: on_success
paths:
- /builds/$CI_PROJECT_PATH/project_name/dist/*.msi
expire_in: 1 yrs
但这也是 运行 当我 tag
提交并将其推送到另一个分支时。
BUILD_BRANCH
是大师。当仅将正常提交推送到其他分支时,这不会 运行。推送到 master 时它会 运行 。但出于某种我不知道的原因,它也在标记的提交上 运行s。是什么原因?
如果重要的话我使用了:git push --atomic origin <branch name> <tag>
推送到另一个分支时。
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
- changes:
- /*.{py, html, css, yml, json}
不是
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
changes:
- /*.{py, html, css, yml, json}
第一个 运行s 当 $CI_COMMIT_REF_NAME == $BUILD_BRANCH
或 文件被更改时。第二个 运行 等于 AND 更改了扩展名的文件。很可能在提交中,对于具有这些扩展名的文件,标记是 运行,因此命令是 运行,忽略第一个条件,因为它是“或”。
将 when: on_success
显式添加到 rules:
是个好主意,这样它就很明显了。
我在管道中有这样的工作:
msi_build:
stage: Build
script:
- cd project_name
- ls -a
- wine python setup.py bdist_msi
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
- changes:
- /*.{py, html, css, yml, json}
tags:
- pywine
artifacts:
when: on_success
paths:
- /builds/$CI_PROJECT_PATH/project_name/dist/*.msi
expire_in: 1 yrs
但这也是 运行 当我 tag
提交并将其推送到另一个分支时。
BUILD_BRANCH
是大师。当仅将正常提交推送到其他分支时,这不会 运行。推送到 master 时它会 运行 。但出于某种我不知道的原因,它也在标记的提交上 运行s。是什么原因?
如果重要的话我使用了:git push --atomic origin <branch name> <tag>
推送到另一个分支时。
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
- changes:
- /*.{py, html, css, yml, json}
不是
rules:
- if: '$CI_COMMIT_REF_NAME == $BUILD_BRANCH'
changes:
- /*.{py, html, css, yml, json}
第一个 运行s 当 $CI_COMMIT_REF_NAME == $BUILD_BRANCH
或 文件被更改时。第二个 运行 等于 AND 更改了扩展名的文件。很可能在提交中,对于具有这些扩展名的文件,标记是 运行,因此命令是 运行,忽略第一个条件,因为它是“或”。
将 when: on_success
显式添加到 rules:
是个好主意,这样它就很明显了。