我的gitlab CI如下:
stages:
- test
cache:
key: ${CI_COMMIT_SHA}
paths:
- mymark
test:
stage: test
script:
- ls -l
- echo "hi" > mymark
- ls -l
tags:
- myrunner
only:
- dev
文件mymark
由构建脚本创建:
$ ls -l
total 76
-rw-r--r-- 1 root root 3 Mar 15 10:48 mymark
但是GitLab没有看到它:
Creating cache 122f151d6b0a9d37cfa2172941d642e5c48287fc...
WARNING: mymark: no matching files
Created cache
Job succeeded
这似乎是随机发生的:有时会找到文件,有时不会:
Creating cache 63d295dad175370aa61d13c4d2f3149e050df5e0...
mymark: found 1 matching files
Created cache
Job succeeded
答案 0 :(得分:1)
这是因为cout
仅可用于项目中的文件,甚至
cache
将使GitLab CI查找/ home / user / yourproject / my_root_path。
答案 1 :(得分:0)
当cd
出现在任何before_script
或script
指令的原始目录中时,就会发生这种情况。
确保cd
返回到您所在的原始目录,以便cache
代码可以查看其查找的路径。