【问题标题】:Copying artifacts from multiple upstream jobs at join in Jenkins在 Jenkins 中加入时从多个上游作业复制工件
【发布时间】:2013-05-23 14:35:29
【问题描述】:

是否可以让来自多个上游作业的 Join 插件复制工件触发 Jenkins 作业?

我正在尝试使用“钻石”作业设置 Jenkins 配置:my-trigger 运行并生成两个作业,my-fork1 和 my-fork2,它们可以同时运行并花费不同的时间,一旦两个分叉都完成,Join 插件就会启动 my-join 作业。

my-trigger、my-fork1 和 my-fork2 中的每一个都创建和指纹工件(例如,文本文件)。

我想使用“从另一个项目复制工件”工具从 my-join 中的每个上游作业复制工件,并将“哪个构建”参数设置为“触发此作业的上游构建”。但是,我在 my-join 的控制台中看到这样的输出:

在工作区 /path/to/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 正在加入相关工件。

如何获得连接步骤以从上游的多个分叉复制工件?

注意:this question 的第二点似乎在问同样的事情,但那里唯一的答案没有解决它,并且已被接受。

谢谢 张量积

【问题讨论】:

    标签: join jenkins


    【解决方案1】:

    如果每次运行 join-diamond 时使用唯一参数对构建进行参数化,则可以在 CopyArtifact 插件中使用该参数来确定要从哪个构建进行复制。您可能希望指定“最新成功构建”并使用参数和值对其进行限定。

    我工作的地方也有类似的情况;多个同时运行的连接菱形。构建中的参数允许下游作业从上游作业中获取正确的工件。

    【讨论】:

    • 是的,谢谢。最后,我使用触发构建的 BUILD_TAG 设置所有下游构建的 UNIQUE_ID 参数,并将其用作连接步骤的标识标记。
    • 你能提供准确的字符串来实现这一点吗?我遇到问题...
    • 恐怕我不再在我进行此修复的地方工作了,所以我手头没有确切的字符串。据我所知,我使用参数化触发器插件来启动下游构建。我用UNIQUE_ID=${BUILD_TAG}手动设置了一个参数。
    • 在触发 Join 构建时,也要指定这个参数。然后,按照 Jason 的建议,在 join-build 中,我使用了 CopyArtifact 插件。确保选择“上次成功构建”并指定UNIQUE_ID=${UNIQUE_ID}(虽然我不记得进入的字段的名称),这一点很重要。
    • 该字段将是“参数过滤器”。
    【解决方案2】:

    Jason Swager 提供的解决方案的逐步设置:

    项目依赖: diamond->fork->diamond_ready

    项目“分叉”: 字符串参数“UNIQUE_ID”(仅内部未使用的虚拟) (创建工件并存档工件)

    项目“diamond_ready” 字符串参数:UNIQUE_ID 从另一个项目复制工件 项目名称:叉子 参数过滤器:UNIQUE_ID=${UNIQUE_ID}

    “钻石”项目: 在其他项目上触发参数化构建 要构建的项目:fork 预定义参数:UNIQUE_ID=${BUILD_TAG} 加入触发器: 加入后操作: 在其他项目上触发参数化构建 待建项目:diamond_ready 预定义的生成器参数:UNIQUE_ID=${BUILD_TAG}

    【讨论】:

      猜你喜欢
      • 2014-07-14
      • 1970-01-01
      • 2014-12-18
      • 2019-04-06
      • 2020-08-11
      • 1970-01-01
      • 2012-02-19
      • 1970-01-01
      • 2014-04-19
      相关资源
      最近更新 更多