是否可以通过来自多个上游作业的加入插件复制工件触发Jenkins作业?
我正在尝试使用"钻石"作业来设置Jenkins配置:my-trigger运行并生成两个作业,my-fork1和my-fork2,它们可以同时运行并占用不同的时间,然后加入两个叉子完成后,插件会启动作业my-join.
每个my-trigger,my-fork1和my-fork2都会创建和指纹工件(比如文本文件).
我想使用"从另一个项目中复制工件"工具从my-join中的每个上游作业复制工件,并将"Which build"参数设置为"触发此作业的上游构建".但是,我在my-join的控制台中看到这样的输出:
在工作空间/路径/到/ workspace/my-join中的构建机器上远程构建
从"my-trigger"内部编号63复制了1个工件
从"my-fork1"内部编号63复制了1个工件
无法从:my-fork2找到工件副本的构建
而且工作失败了.在这种情况下,my-fork2首先完成,所以my-fork1触发了join步骤.我相信这意味着my-join只记录my-fork1和my-trigger作为上游.如果my-fork1首先完成,那么my-fork2将启动连接,并且在尝试从my-fork1复制时作业失败.
如果我更改配置以从构建"最新成功构建"中复制工件,则构建成功,但是my-trigger可能会连续运行多次,因此无法保证my-join正在加入相关工件.
如何从上游复制多个叉子的连接步骤?
注意:这个问题的第二点似乎是问同样的事情,但唯一的答案是没有解决它,并已被接受.
谢谢tensorproduct
如果为每次运行join-diamond使用唯一参数参数化构建,则可以在CopyArtifact插件中使用该参数来确定要从中复制的构建.您可能希望指定"最新成功构建"并使用参数和值对其进行限定.
我的工作情况类似; 多次同时运行连接钻石.构建中的参数允许下游作业从上游作业中获取正确的工件.
| 归档时间: | 
 | 
| 查看次数: | 5918 次 | 
| 最近记录: |