当前位置: 首页 > 面试题库 >

在通过ssh启动的脚本中,Jenkins似乎是nohup的目标,我该如何防止呢?

彭修筠
2023-03-14
问题内容

我正在尝试创建一个Jenkins作业,该作业将重新启动始终在我们的一台服务器上运行的程序。

我指定以下作为要运行的命令:

cd /usr/local/tool && ./tool stop && ./tool start

脚本“工具”包含如下一行:

nohup java NameOfClass &

该命令的输出在我的构建控制台中而不是在nohup.out中结束,因此该作业永远不会终止,除非我手动终止它,这会终止程序。

如何使nohup的行为与从终端执行的行为相同?


问题答案:

如果我对问题的理解正确,则Jenkins将在构建结束时终止所有进程,并且您希望在构建完成后保留某些进程运行。

您应该阅读https://wiki.jenkins-
ci.org/display/JENKINS/ProcessTreeKiller

本质上,Jenkins在BUILD_ID环境变量中搜索具有某些秘密值的进程。只需为要单独处理的进程覆盖它即可。



 类似资料:
  • 在我的应用程序中,我有一个显示某种级别的列表视图。 我用资产中的一个文件填充listview。我在资产中的文件如下所示: 我的listview显示级别,当我单击listview的某个项目转到另一个活动时,“转到下一个活动”也会显示我的问题和选项。一切正常,我的问题是,当在第二个活动中按后退按钮转到第一个活动时,第一个活动再次启动,我的onCreate方法再次运行,我的listview项增加。(例如

  • 我读过一些文章,其中他们建议使用手动密钥,我在上面也这样做了,但身份验证仍然失败。我错过了什么?

  • 我在Unix系统(OEL)上安装了一个Jenkins master。我配置了两个通过SSH启动的Unix从机(也是OEL)。从属程序永远不会启动,主程序的GUI中也不会报告错误(根本没有输出,只是一个旋转的球): 我在文件中看到的唯一警告是: 主服务器上的JDK版本是: 从服务器上的Java版本: 看起来Jenkins没有启动任何SSH连接。 将Jenkins升级到1.607版本后,在尝试启动从机

  • 问题内容: 我已经使用docker安装了Jenkins,尽管我已经跳过了手动设置。当我构建映像并运行它时(仍然有很多事情要做),我需要在浏览器中键入IP和端口以打开Jenkins仪表板。 我的问题是,我可以在运行该映像的泊坞窗中使用脚本自动执行构建的Jenkins应该在浏览器中打开的工作吗? 任何需要运行的命令,请对其进行注释 我试图通过命令打开浏览器,但最终出现错误。任何人都可以使用我的自动化工

  • 我在Jenkins的Build Executor Status面板中单击了一个作业名称旁边的[x]按钮,中止了该作业,但该作业仍然存在并等待。 即使我重新启动Jenkins它也会恢复构建。当我看一下控制台时,我看到: 向进程发送中断信号单击此处强制终止运行步骤。伊奥。IOException:正在中止sun的构建。反映国家建筑配件公司。sun的newInstance0(本机方法)。反映国家建筑配件公