【问题标题】:Jenkins CI build timeout for long processesJenkins CI 为长流程构建超时
【发布时间】:2012-08-01 16:54:26
【问题描述】:

我们使用 Jenkins CI(版本 1.454)作为自动化测试的执行引擎(通过 Ant 触发)。我的一项测试至少运行 1-2 天。我无法完全找到,因为 Jenkins 总是在我的测试完成之前终止它。上次约 20,5 小时后。

我们安装了“构建超时”插件,但有问题的测试项目没有配置超时,所以它不应该中断。测试在从节点上运行。全局 Jenkins 配置不包含任何超时设置。

我见过另外两个人有类似的问题,但到目前为止还没有答案

堆栈跟踪:

INFO: Test-Linux-lts-mc #31 aborted
java.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:127)
at hudson.remoting.Channel.call(Channel.java:681)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:158)
at $Proxy37.join(Unknown Source)
at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:859)
at hudson.Launcher$ProcStarter.join(Launcher.java:345)
at hudson.tasks.Ant.perform(Ant.java:217)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:703)
at hudson.model.Build$RunnerImpl.build(Build.java:178)
at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:473)
at hudson.model.Run.run(Run.java:1408)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:238)

控制台日志不显示任何错误或超时指示。它只是说构建中止并清理节点工作区。

【问题讨论】:

  • 并不是说这解决了实际问题,但是您确定需要这么长时间才能运行的测试属于持续集成引擎吗?
  • 因为我们想定期运行它们(每 6 小时),我认为可以。这个测试是一个例外,需要更长的时间,但由于我们已经建立了框架来设置和测试我们的应用程序,并且通常测试类似于其他(较短的)测试,它有点属于那里。对我们来说,Jenkins 是一个执行调度器。
  • 这似乎是来自您的主人的日志。你能分享从奴隶的日志吗?
  • 问题已解决:我的 ant 脚本开始测试时出现问题。它不是通过 ant 启动测试,而是在 ant 包装器中使用 Java 任务。用 ant 调用替换纯 Java 调用解决了我的问题。

标签: ant continuous-integration jenkins


【解决方案1】:

Jenkins 本身没有超时。我有 24 小时的性能测试,Jenkins 没有中止它们。

java.lang.InterruptedException 让我觉得你的构建过程中有一个信号逃逸并击中了 Jenkins。您是否使用 Invoke Ant 构建步骤运行 ant 目标?如果是,您可以尝试执行 shell 构建步骤并在 shell 中运行 ant yourtarget。

【讨论】:

  • 基本思路不错。如上所述,我使用纯 Java 开始测试,这导致了崩溃。用另一个 ant 脚本调用测试执行解决了我的问题。
猜你喜欢
  • 1970-01-01
  • 2017-01-21
  • 2012-08-27
  • 1970-01-01
  • 2016-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多