问题描述
我需要将一个管道中生成的文件夹传递到 Gitlab CI 中的下一个管道。有哪些可能的方式?
- 是否可以仅通过 Artifacts 实现?
- 我们只能通过缓存来实现吗?
- 如果通过缓存,我们可以在缓存中设置任何到期时间吗?
我的实际问题是(但目前没有答案): Carry artifacts of Gitlab pages between pipelines/jobs
解决方法
有一个简单的区别:
- 缓存用于不同管道中相同作业的多次运行以及同一个运行器(除非您配置了共享缓存存储)
- 工件用于在单个管道内的不同作业 之间传递文件
作业可以指定一个 artifacts:expire_in
关键字来控制其工件的寿命(请参阅 https://docs.gitlab.com/ee/ci/yaml/README.html#artifactsexpire_in)。