3

嗨,

我正在尝试在 Jenkins 中正确配置一个项目。

我想使用作业的并行化来使用不同的机器来计算一些计算。

我的脚本包含三个部分: A - 一个带有参数的脚本。这个参数是一个大文件。该脚本将计算我需要启动多少个小计算作业。B - 数量可变的少量并行作业。这是我在不同的小文件上启动的相同工作。C - 必须等待所有小工作(第 2 部分)完成的最终工作。

问题是我想监控进度。

我的想法是在第三部分使用 join 插件。但是我在为第 2 部分启动可变数量的下游作业时遇到了一些问题......(以便我可以使用管道下游插件监控它们)

你知道我该怎么做吗?

为了在第 2 部分中启动同一作业的可变编号,我正在考虑在我的脚本 A 中调用 jenkins api。当你调用 api 时有什么方法可以通知父项目,以便在父项目中你会看到通过 api 调用的所有下游作业?

4

1 回答 1

1

很抱歉,这不是您问题的直接答案,但我不确定 Jenkins 是否能够很好地管理您所描述的工作的可变分布。但是,还有其他可能有用的工具。

  • 我已经使用并行来执行简单的批处理操作,并在多台机器上的大量文件中自动执行分析操作。
  • 这个 ServerFault 问题中有很多工具链接,关于如何将相同的命令分发到多台机器。

如果 B 中的每个作业都需要标准的签出、构建、存档步骤,我可以看到 Jenkins 将如何发挥作用。但如果 B 中的工作更独立,那么我会使用更简单的工具。使用并行之类的工具,您的所有步骤都将成为一项工作,可以通过并行的控制台输出进行监控。

于 2011-04-15T17:11:26.450 回答