如何解决Gitlab CI - 如果缓存存在,如何跳过作业
我的 CI 中有一个 setup
作业,它安装所有 npm 包并将它们存储在缓存中:
setup:
stage: pre-build
cache:
untracked: true
when: on_success
key:
files:
- repo-hash
prefix: workspace
script:
- yarn install --frozen-lockfile
目前,如果 repo-hash 在两个管道之间没有变化,则作业成功下载现有缓存,但它仍然运行 yarn install --frozen-lockfile
。
如何更改此行为,以便在缓存存在时跳过此作业?
解决方法
尝试退出?
install:
stage: install
cache:
key:
files:
- package-lock.json
prefix: $CI_PROJECT_NAME
paths:
- node_modules/
script:
- |
if [[ -d node_modules ]]; then
exit 10
fi
- npm ci --cache .npm --prefer-offline
allow_failure:
exit_codes: 10
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。