我正在使用 GoCD 构建一个包含大量模块的项目,并将其建模为具有两个阶段的管道(阶段 1 是构建代码,阶段 2 是运行测试)。成功构建阶段后的目录结构如下所示:
myproject/
|-- myproject-module1
| |-- build <-- created by stage 1, required by stage 2
| `-- src
|-- myproject-module2
| |-- build <-- created by stage 1, required by stage 2
| `-- src
|-- myproject-module3
| |-- build <-- created by stage 1, required by stage 2
| `-- src
`-- ... many more modules ...
在第 1 阶段,我使用 source 配置了 Build Artifact,*/build
在第 2 阶段,我尝试使用 source 再次获取所有构建文件夹*
,目的是使它们最终src
位于每个项目内文件夹旁边的正确位置模块。
不幸的是,我还没有找到实现这一目标的方法。GoCD 似乎为所有*\build
文件夹创建了一个单独的 ZIP 文件,在提取过程中,*.zip
找不到该文件(我假设它确实在寻找具有该确切名称的文件,而不是使用通配符)。当然,我可以硬编码所有模块名称并单独 fetch myproject-module[1:n]
,但这正是我想要避免的。
有人对如何实现这一点有一些建议吗?
在2014 年的讨论中,声称不能使用通配符来获取工件。真的还是这样吗?!