由于不同的跑步者,Gitlab管道缓存未被共享

时间:2016-09-26 14:18:03

标签: gitlab-ci

我有一个简单的Gitlab管道设置,有两个阶段:build&测试。这两个阶段都应该共享缓存文件,但它们看起来并不存在,导致测试阶段失败。尽我所能,问题是每个阶段使用不同的跑步者,缓存的文件使用跑步者ID作为路径的一部分。

.gitlab-ci.ym

...
cache:
  key: "build"
  untracked: true
...

构建阶段输出以下

Creating cache build...
untracked: found 787 files                         
Uploading cache.zip to https://runners-cache-1.gitlab.com:443/runner/runner/30dcea4b/project/1704442/build 

测试阶段输出以下

Checking cache for build...
$ mvn test

我认为这意味着找不到缓存,因为没有下载信息;但目前尚不清楚。

我还可以看到每个阶段使用不同的跑步者,因为跑步者ID是缓存路径的一部分,我怀疑这是问题所在。

我需要为每个阶段使用相同的跑步者,或者在跑步者之间共享缓存。我不明白怎么做。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

cache功能似乎被恰当地命名,它仅用于提高构建性能,并且不能保证拥有数据,就像真正的缓存一样。

正确的方法是将artifactsdependencies一起使用。