詹金斯,乔布斯遇害,工作区被锁定

时间:2016-04-14 10:39:38

标签: java jenkins workspace

我面临以下问题.. 假设您运行Jenkins作业,由于某种原因,这会被Jenkins杀死,可能是因为超时问题,或类似的事情......

Build timed out (after 40 minutes). Marking the build as aborted.
Build was aborted

问题在于,在下一次运行同一作业时,由于以下原因导致失败:

ERROR: Cannot delete workspace: remote file operation failed: C:/Jenkins   /workspace/... at hudson.remoting.Channel@430a642f:WIN-CI: java.nio.file.FileSystemException: C:\Jenkins\workspace\....cucumber-html-report\report.js: The process cannot access the file because it is being used by another process.

任何想法?这似乎是一个容易解决的问题,但它不是,因为,似乎删除工作空间的唯一方法是停止代理删除恶意空间并重新启动代理,这听起来有点与可以解决方案相比从jenkins运行,我的意思是,如果删除工作区的条件是停止代理,这不能远程管理...

我认为这是非常普遍的事情,所以我会等待你的好建议! :)

1 个答案:

答案 0 :(得分:0)

也许您可以在handle.exe中使用Sysinternals pre-SCM build step来解锁report.js

当我们将新的补丁集推送到相应的Gerrit更改(JENKINS-12513)时,当Jenkins Gerrit插件在运行git-checkout时正在中止构建时,我们的环境中经常发生类似的故障

要解决此问题,我们添加了一个名为Python脚本的pre-SCM build step,该脚本使用handle.exe向工作区中的index.lock报告所有打开的句柄,关闭它们,然后删除锁定文件。这样做是安全的,因为我们的工作有自己的工作区,没有并发性。

相关问题