Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upRun pkill on the Windows builders #351
Comments
|
You know what else you could do? Use job objects. Rust uses job objects to very good effect on its builders, and they ensure that there are no child processes of any sort hanging around. Originally Rust used https://github.com/retep998/dojob-rs although recently it switched to https://github.com/alexcrichton/rustjob to avoid killing mspdbsrv.exe |
|
Do you have a doc link for job objects? Are they similar to control groups on Linux? (I'd love to use process/control groups for much better control, but that will take some time to investigate, and I'm not sure about an equivalent for OS X.) |
|
Fixed in #426 using |
Our Linux and OS X builders use pkill before each build to ensure there are no extra
servoprocesses.We should also run this on the Windows builders. The best way to do this would be to write a custom script in the
etc/cidirectory of the main servo repository, which runs pkill on Linux/OS X, or the corresponding command on Windows (possiblytaskkill /im servo.exe, see this comment).A possible complication is that we run Windows commands inside a bash shell; this script should either work from inside that shell, or be run outside of it.