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

如何在多作业项目中成功执行作业后告诉詹金斯不要杀死进程?

夏侯宏旷
2023-03-14
问题内容

我有一个詹金斯 综合项目

在第一阶段 ,我启动数据库并构建核心部分。

用于启动Mongodb的示例Shell命令:

/root/software/mongodb-linux-x86_64-2.6.3/bin/mongod&

在第二阶段 ,我有各种各样的工作来建立一些客户。

在完成第一阶段的工作之后,启动了服务器并构建了核心部分。我看到日志-

Process leaked file descriptors. See http://wiki.jenkins-ci.org/display/JENKINS/Spawning+processes+from+build for more information
2016-08-26T20:23:00.815+0530 [signalProcessingThread] got signal 15 (Terminated), will terminate after current cmd ends
2016-08-26T20:23:00.833+0530 [signalProcessingThread] now exiting
2016-08-26T20:23:00.879+0530 [signalProcessingThread] dbexit: 
2016-08-26T20:23:00.903+0530 [signalProcessingThread] shutdown: going to close listening sockets...
2016-08-26T20:23:00.903+0530 [signalProcessingThread] closing listening socket: 7
2016-08-26T20:23:00.903+0530 [signalProcessingThread] closing listening socket: 8
2016-08-26T20:23:00.903+0530 [signalProcessingThread] removing socket file: /tmp/mongodb-27017.sock
Finished: SUCCESS

这将停止所有数据库,并且第二阶段作业的构建将失败。

如何告诉詹金斯下班后不要杀死进程


问题答案:

根据@jayan共享的文档,

您可以通过将Java属性设置为value 来禁用 在构建过程中由作业产生的终止进程
hudson.util.ProcessTree.disable``true

启动Jenkins时,可以将其作为“ java”二进制文件的参数来完成:

 java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war


 类似资料:
  • 问题内容: 我正在测试詹金斯,看它是否适合我们的构建和测试框架。我发现Jenkins及其可用的插件可以满足我们的大多数需求。除了我似乎无法找到有关如何执行一种特定类型任务的帮助。 我们正在为嵌入式设备创建应用程序。我们需要在这些设备上运行100项测试。如果我们在构建后在一台设备上运行所有测试,那么将需要几个小时才能获得结果。但是,如果我们在100个设备上并行运行测试,则可以在更短的时间内获得结果。

  • 问题内容: 我在詹金斯(Jenkins)有一个提交构建项目,该项目计划在完成时安排一个接受构建项目。由于提交的速度快于接受构建作业的完成时间,因此不久之后,现在有 六个 排队的接受构建作业。我希望验收构建项目像“投票SCM”功能一样工作- 完成后,开始最近排队的作业 ,跳过其余的 作业 。 没有更多的技巧,我无法使用“在构建其他项目之后构建”,因为我需要将信息从提交构建作业传递到验收构建作业。 问

  • 我试图从流水线步骤中运行一个job-dsl脚本。一般来说,这应该是可能的,正如这里所描述的,在管道步骤中添加了以下代码片段: null 我如何知道脚本的真实位置,以及如何指定一个jobDsl作为目标,它本身位于不同的repo中?还是我完全走错了方向? 编辑 经过进一步的研究,共享库存储库被签出到“真实”工作区旁边的一个目录中,后缀为@libs,这似乎是事实。所以我认为使用以下方法是个好主意: 与此

  • 我正在Jenkins进行一个用sonarqube分析代码的项目。workspace下的项目结构为:/var/lib/jenkins/workspace/myproject-trunk-sonar/myproject/pom.xml,Module1,Module2等 如果pom.xml和模块所在的/var/lib/jenkins/workspace/myproject-trunk-sonar/myp

  • 问题内容: 我有一个运行bash脚本的詹金斯工作。 在bash脚本中,我有效地执行了两个操作,例如 但是如果手动中止了作业,则该作业仍然有效(如节点计算机上的a所示)。我无法使用陷印等等,因为如果jenkins发送信号(陷印不适用于),那将不起作用。 如果可以将此作业配置为简单地杀死它产生的 所有 进程,那将是理想的,我该怎么做? 问题答案: 实际上,默认情况下,Jenkins具有一个名为 Pro

  • 问题内容: 我安装了Jenkins,用于运行在Java,Maven,JMeter等上运行的自动化测试。Builds不会生成部署文件和文件夹,而只会生成测试报告。我是否可以一个接一个地(几乎同时)建立多个作业以并行运行?他们不必完全在同一时间。我只想确保开始第二个构建不会停止/损坏第一个(已运行)构建。谢谢 问题答案: 是的,有可能。 转到您的工作->配置并检查: 如有必要,执行并发构建 文件: 如