如何解决在Gitlab CI中,当我按下标签时取消master上的管道
我有这个.gitlab-ci.yml文件:
image: node:latest
stages:
- build
- test
- publish
cache:
key:
files:
- package.json
- package-lock.json
paths:
- node_modules
build:
stage: build
script:
- echo -e "//my.private.repo.com/:_authToken=${NPM_TOKEN}\n$(cat .npmrc)">.npmrc
- npm install
- npm run build
artifacts:
paths:
- node_modules
- .npmrc
test:
stage: test
script:
- npm test
publish:
stage: publish
script:
- npm publish
only:
- tags
使用这种配置,当我推送一个简单的提交时,一切正常:按预期进行构建+测试。
但是,当我推送标记(使用npm version
在此处创建时,会创建两个管道:1用于提交,1用于标记。因此,构建和测试执行两次。
我该如何防止这种行为,并使用标记管道来“取消”提交管道
解决方法
当您推送一个简单的提交或标记时,您可能会有不同的工作,并使用only
和except
关键字来区分情况,否则这是GitLab考虑的正确行为。您可以查看有关已解决问题here的讨论。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。