我在我的CI中有一个setup
作业,它安装所有npm软件包并将它们存储在缓存中:
setup:
stage: pre-build
cache:
untracked: true
when: on_success
key:
files:
- repo-hash
prefix: workspace
script:
- yarn install --frozen-lockfile
目前,如果在两个流水线之间,仓库哈希值没有改变,作业会成功下载现有的缓存,但仍然会运行yarn install --frozen-lockfile
命令。
如何更改此行为,以便如果缓存存在,跳过该作业?
.yarn
目录,例如 https://classic.yarnpkg.com/en/docs/install-ci/;你仍然需要进行安装,但是大多数(如果不是全部)文件已经在本地了。 - jonrsharpeyarn install
步骤:/ - Nicoowrchanges
关键字,仅在指定字段更改时运行作业:https://docs.gitlab.com/ee/ci/yaml/#ruleschanges - Nicoowr