2015-10-07 63 views
1

我有两个管道运行在不同的代理上,一个用于构建并运行单元测试另一个将工件部署到tomcat。第一个管道被配置为存储工件,文件被复制到server/artifacts/pipelines/xx文件夹。如何获得第二个管道将文件复制到第二个代理上?GoCD - 如何跨机器/管道复制文件

回答

2

正如Juhi在前面的回答中所说,您可以使构建管道上游依赖于部署管道。当您创建部署管道时,请务必在中选择步骤2:材料管道作为材料并选择构建管道。

由于Go CD具有客户端服务器体系结构,因此在一个管道中定义的所有工件都将传输到服务器,并可用于所有下游相关性。发生这种情况是因为您可以有多个代理,并且不能保证相同的代理将同时执行构建和部署。

在下游管道(您的情况下部署管道)中,您可以添加作业获取任务您可以在其中选择构建管道,阶段和作业,从而创建工件并将工件交给工件。

您甚至可以创建模板以部署,并将其用于在不同环境中进行部署。

+0

我已经在文档中看到了提取任务..但在作业/任务屏幕中找不到它..它在安装完不同的插件(从s3获取)。 – saugata

1

您可以在第一个和第二个管道之间创建管道依赖关系。请参阅create pipeline dependncy文件。之后setup fetch artifact task在第二个管道中从第一个管道获取工件。

+0

这两个链接都已损坏:( – dokaspar

+0

新链接应该是https://docs.gocd.org/current/configuration/managing_dependencies.html#fetching-artifacts-from-an-upstream-pipeline和https:// docs.gocd.org/current/configuration/managing_dependencies.html#creating-a-dependency –

相关问题