GitLab CI/CD后续阶段如何访问产物?原路径是否可用?
GitLab CI/CD 产物路径访问问题解答
可以的,你在deploy-job里完全可以通过原路径deploy/build.zip访问build阶段生成的产物。
GitLab CI的机制是:当前置阶段的任务成功生成artifacts后,后续阶段的任务执行时,会自动将这些产物下载到当前任务的工作目录中,并且严格保留产物原来的目录结构。也就是说build-job里通过artifacts.paths指定的deploy/build.zip,会完整还原到deploy-job工作目录下的相同位置,直接用原路径访问完全没问题。
如果担心路径有问题,你可以在deploy-job的script里先加一行验证命令,确认文件存在:
- ls -la deploy/
另外需要注意,只要build-job成功生成了artifacts,且没有配置artifacts.expire_in导致产物提前过期,不管后续任务用的是同一个runner还是不同runner、不同Docker镜像,都能直接通过原路径访问这些文件——因为每个任务都是在独立的环境里执行,artifacts会被重新下载到对应环境的工作目录。
内容的提问来源于stack exchange,提问作者LP13
相关产品推荐
相关产品推荐

