[Python-Dev] Possible language summit topic: buildbots
"Martin v. Löwis"
martin at v.loewis.de
Sun Oct 25 20:06:49 CET 2009
> As I have no specific experience maintaining any of the CPython build
> slaves, I can't speak to any maintenance issues which these slaves have
> encountered. I would expect that they are as minimal as the issues I
> have encountered maintaining slaves for other projects, but perhaps this
> is wrong. I do recall that there were some win32 issues (discussed on
> this list, I think) quite a while back, but I think those were resolved.
> I haven't heard of any other issues since then.
Only partially. One old issue was that previous builds would not
complete, keeping the executable files open, preventing further
runs. Buildbot is supposed to kill a build, but only kills the
parent process (as it is really difficult to kill the entire process
tree (*)). We work around this by explicitly killing any stale Python
processes at the beginning of a new build.
The remaining issue is the popups; if a process still has a popup,
you can't even terminate it properly. There are two kinds of popups:
system-generated ones, and CRT-generated ones. For the CRT ones, we
once had a way to turn them off, but I'm not sure whether that mechanism
might have been removed. For the system messages, there is a way to
turn them off in the parent process. David Bolen (IIRC) had developed
a patch, but I think this patch only runs on his system(s).
(*) it may help if Buildbot would create a Win32 job object, and
then use TerminateJobObject. Contributions are welcome.
More information about the Python-Dev