我们的Jenkins服务器有一个已经运行了三天的作业,但是没有做任何事情。单击角落里的小X没有任何作用,控制台输出日志也没有显示任何内容。我在我们的构建服务器上检查过,该作业实际上似乎根本没有在运行。

有没有办法告诉jenkins工作已经“完成”了,比如编辑一些文件或锁之类的?因为我们有很多任务,所以我们并不想重新启动服务器。


当前回答

构建超时插件在这种情况下可以派上用场。如果花费太长时间,它会自动终止工作。

其他回答

在这种情况下,我通常使用jenkins-cli。你可以从http://your-jenkins-host:PORT/cli上下载这个罐子。然后运行

java -jar jenkins-cli.jar delete-builds name_of_job_to_delete hanging_job_number

辅助信息:

你也可以通过350:400这样的构建范围。 一般帮助可通过运行

java -jar jenkins-cli.jar help

上下文命令帮助删除构建by

java -jar jenkins-cli.jar delete-builds

同样的问题已经发生在我身上两次了,唯一的解决方案是重新启动tomcat服务器并重新启动构建。

我也有同样的问题,并修复它通过詹金斯控制台。

进入“Manage Jenkins”>“Script Console”,运行一个脚本:

 Jenkins .instance.getItemByFullName("JobName")
        .getBuildByNumber(JobNumber)
        .finish(hudson.model.Result.ABORTED, new java.io.IOException("Aborting build")); 

您只需指定JobName和JobNumber。

我想现在回答已经太迟了,但我帮助了一些人。

安装监控插件。(http://wiki.jenkins-ci.org/display/JENKINS/Monitoring) 进入jenkinsUrl/monitoring/nodes 转到底部的Threads部分 点击主界面左侧的详细信息按钮 按用户时间排序(ms) 然后查看线程的名称,您将获得构建的名称和编号 杀了它

对不起,我没有足够的声誉来发布图片。

希望能有所帮助

如果“X”按钮不起作用,作业被卡住,那么只需删除特定的版本号。这将解放遗嘱执行人。

在我的例子中,即使工作完成了,它仍然停留在执行者几个小时。删除构建对我来说是有效的。