我如何在 2 个奴隶中执行 Jenkins 工作
How can i execute Jenkins job in 2 slaves
我有 jenkins master 和两个名为 slave1 和 slave2 的奴隶。我想在同一作业中在 slave1 上执行一些 shell 命令,在 slave2 上执行一些 shell 命令。我该怎么做...?
作为第 1 步,您需要在 jenkins 中创建一个多配置作业。在多配置作业中,您可以 运行 一个 运行 的两个或多个从站上的相同作业。
- 您需要使用配置矩阵下的 slaves 选项和列表中的 select slave 1 和 slave 2。
- 现在,您的作业 运行 中的一个 运行 全部在两个从属设备上执行 shell。
- 坚持下去是不是你想要的?现在你只是在两个奴隶上执行了同样的工作。
- 现在是您的下一个要求,即特定的 shells 应该在特定的从站上执行。
为此,您需要使用 if 条件并检查作业是否正在预期的从机上执行,如果是,则执行 shell,否则跳过执行。
现在如何判断我的作业是在哪个slave上执行的,可以使用jenkins预定义的环境变量NODE_NAME.
[[ $NODE_NAME == slave1 ]] && 回显代码执行。
你可以写类似上面的东西来完成要求的事情。
我有 jenkins master 和两个名为 slave1 和 slave2 的奴隶。我想在同一作业中在 slave1 上执行一些 shell 命令,在 slave2 上执行一些 shell 命令。我该怎么做...?
作为第 1 步,您需要在 jenkins 中创建一个多配置作业。在多配置作业中,您可以 运行 一个 运行 的两个或多个从站上的相同作业。
- 您需要使用配置矩阵下的 slaves 选项和列表中的 select slave 1 和 slave 2。
- 现在,您的作业 运行 中的一个 运行 全部在两个从属设备上执行 shell。
- 坚持下去是不是你想要的?现在你只是在两个奴隶上执行了同样的工作。
- 现在是您的下一个要求,即特定的 shells 应该在特定的从站上执行。
为此,您需要使用 if 条件并检查作业是否正在预期的从机上执行,如果是,则执行 shell,否则跳过执行。
现在如何判断我的作业是在哪个slave上执行的,可以使用jenkins预定义的环境变量NODE_NAME.
[[ $NODE_NAME == slave1 ]] && 回显代码执行。
你可以写类似上面的东西来完成要求的事情。