ansible/ansible — pull request #272 by jhoekx (2012-04-28 19:33:39+00:00)
Title: Make async wrapper kill the process it supervises.

It wasn't killing the job at all before.
Indentation was 3 spaces.

The old code used `signals.SIGKILL` instead of `signal.SIGKILL`. When that was corrected, only the wrapper was killed, the actual modules became zombies.

We now group the children in a process group that we can kill.

Please test since this is not easy to get right. Especially `os._exit` versus `sys.exit`. I read that the child should call _exit, except inside a daemon, where it's the parent.

Thanks to Dag for helping debug this.