根据GitLab 缓存与工件的文档,应该将其node_modules
存储为缓存而不是工件。这样做的问题是,如果有多个运行程序,并且与创建“构建”的运行程序不同,那么缓存 ( node_modules
) 将不存在,这将导致 GitLab CI 随机失败(如果同一个运行程序碰巧执行了以下操作)其余的工作就会成功)。
我可以做到这一点,这样一切都可以在一项工作中完成,但是一旦我必须进行部署,这个问题就会再次出现。另一种选择是对其进行标记,以便只有一个特定的跑步者完成这项工作,但我觉得这很慢。
经过研究,我意识到我可以将其作为工件而不是缓存放入node_modules
,无论哪个运行程序运行该作业,它都会被拾取,但我找不到任何关于这是否不好的文档。
node_modules
那么作为神器放起来可以吗?如果是这样,为什么人们通常不会将其作为工件(假设他们添加了过期时间)?