【发布时间】:2021-02-15 06:15:11
【问题描述】:
当我在 gocd 上运行测试时,maven 每次都会下载依赖项。
我正在考虑以下步骤。但我需要知道下载依赖项的文件夹的位置。
- 使用两条管道。
- 用于下载依赖项并为其创建工件。我打算运行一次。
- 第二个用于运行测试。它从其他管道获取工件并直接运行测试。
这是防止每次都下载依赖项的方法吗?
【问题讨论】:
当我在 gocd 上运行测试时,maven 每次都会下载依赖项。
我正在考虑以下步骤。但我需要知道下载依赖项的文件夹的位置。
这是防止每次都下载依赖项的方法吗?
【问题讨论】:
GoCD 不会每次都专门下载依赖项。您在构建过程中运行的 mvn 命令会执行此操作。
这可能发生的几个原因:
弹性代理:如果代理是在构建后退役的容器,您可能会遇到此问题。考虑在代理上的路径/var/go/.m2 上挂载一个共享卷,以便在运行中重复使用缓存。但是,这样做的方法超出了此答案的范围。
管家脚本:在代理框上清除 /var/go/.m2 或更一般的 ~/.m2 比我想承认的更常见。这可能发生在一些基础设施/团队中,他们有一个脚本来清除这些依赖关系以节省磁盘空间。如果您的基础架构中存在此类问题,您可能需要与您的 Ops 团队核实。
【讨论】: