0

我有詹金斯大师和两个名为 slave1 和 slave2 的奴隶。我想在同一个作业中在 slave1 上执行一些 shell 命令和在 slave2 上执行一些 shell 命令。我怎样才能做到这一点...?

4

1 回答 1

0

您需要在 jenkins 中创建一个多配置作业作为步骤 1。在多配置作业中,您可以在两个或多个从站上运行相同的作业以进行单次运行。

  1. 您需要使用配置矩阵下的从属选项并从列表中选择从属 1 和从属 2。
  2. 现在,您的作业的单次运行将在两个从站上运行所有执行 shell。
  3. 坚持这不是你想要的吗?现在您只需在两个从站上执行相同的工作。
  4. 现在是您的下一个要求,即特定的 shell 应该在特定的从站上执行。

为此,您需要使用 if 条件并检查作业是否在预期的从属设备上执行,如果是,则执行 shell,否则跳过执行。

  1. 现在如何查找我的工作是否在哪个 slave 上执行,您可以使用 jenkins 预定义的环境变量 NODE_NAME。

    [[ $NODE_NAME == slave1 ]] && echo 代码执行。

  2. 您可以编写类似于上面的内容并完成所需的事情。

于 2016-06-15T05:12:10.507 回答