我在Jenkins上有一份能够运行守护进程(lsyncd)的工作,该守护进程在作业结束后仍然存在。该守护进程必须在SSH代理下运行,因此我为Jenkins安装了一个能够设置SSH代理的插件。
当我开始我的工作时,一切正常,我的lsyncd守护程序运行正常但是一旦工作完成,似乎我的SSH代理程序死了,我的守护程序不再能够工作了。
你是否知道如何告诉Jenkins即使在工作结束后也能让我的代理人保持活力?
亲切的问候, 本
答案 0 :(得分:0)
我假设您使用的是“通过SSH发布”插件。
您应该使用SSH发出命令来生成像bash
这样的新shell,而不是运行直接启动守护程序的命令(而不是SSH shell)。然后在这个bash shell中运行你的守护进程。完成后,您仍然应该激活shell,因此ssh代理不会终止。
您需要将SSH代理的jenkins作业中的超时设置为长超时(或0,表示没有超时)