将 salt 工作节点 id 从平面文件传递给 Jenkins 管道



我在那里寻找一些想法。我有一组 Jenkins 管道作业。目标计算机/工作节点名称作为参数传递到作业中,并且作业运行正常。我被要求通过一个文件来驱动它。.i.e. 所有工作节点 ID 或目标机器都列在一个平面文件中,我希望 Jenkins 在循环中选择机器名称并执行管道。管道在后台运行盐状态文件。任何想法,如何实现这一目标。

如果您有包含工作节点列表的文件minions.txt,例如

minion_01
minion_02
minion_03

当您使用-L/--list选项时,salt可以按列表定位工作节点。

您可以致电例如 通过以下命令对这些工作节点进行test.ping

salt --list `awk -vORS=, '{ print $1 }' minions.txt | sed 's/,$/n/'` test.ping

ORSawk中的输出记录分隔符,您要求awk逐行打印文件,但使用,作为分隔符输出行。sed删除最后一个条目。

最后,你可以用sh """ ... """把它包装在 Jenkins 中

最新更新