哈德森“停止” / 取消构建,留下进程
我们有一个由 Hudson (1.312) 管理的自动化构建,它有几个层。 在从站上:
- codewarrior cc/ld 和其他工具(一些内部工具),由
- 一些递归 Cygwin GNU make 3.81 实例运行,由
- Hudson“执行 Windows 批处理命令”运行(因此 cmd.exe 运行 hudson 创建的批处理文件) ,据我所知),由
- Hudson 服务运行,作为域用户(不是 LocalService)运行,在
- Windows XP(32 位)机器
上启动。 master 是运行普通 Tomcat 的 OSX 机器。
问题是:“取消构建”按钮(导致“停止”URL 的红色小 X)不会取消 make 或其任何子进程。 就 Hudson UI 而言,作业已成功停止,但仍有 make.exe 和 cc/ld 进程在运行。 如果构建在同一工作区中再次启动,这可能会导致严重的问题。
是否有关闭所有这些进程的“最佳实践”?
(在有人建议使用像 ant、jam、maven 等不太像弗兰肯斯坦式的构建管理框架之前,我们正在迁移到 jam,并且取得了一定的成功!在解决问题的同时,我们需要在当前系统上构建可终止的版本, 尽管。)
We have an automated build, managed by Hudson (1.312), that's got a few layers. On the slaves:
- codewarrior cc/ld and other tools (some in-house), run by
- a few recursive Cygwin GNU make 3.81 instances, run by
- Hudson "execute windows batch command" (so cmd.exe running a batch file that hudson creates, as near as I can tell), run by
- Hudson service, running as a domain user (not LocalService), started on
- a Windows XP (32-bit) machine
The master is an OSX machine running a stock Tomcat.
The problem: the "cancel build" button (little red X that leads to a "stop" URL) doesn't take out make or any of its subprocesses. As far as the Hudson UI is concerned, the job stopped successfully, but there are still make.exe and cc/ld processes running. This can cause serious problems if the build starts again in the same workspace.
Is there a "best practice" for getting all of these processes to shut down?
(Before anyone suggests a less Frankensteinian build management framework like ant, jam, maven, etc -- we're migrating to jam, somewhat successfully! While we're getting the kinks sorted out, we need to have builds killable on the current system, though.)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这可能是一个错误,我们需要诊断这个问题。 您可以将其归档到问题跟踪器中吗?
This is likely a bug, and we need to diagnosis this problem. Can you file this in the issue tracker please?