David Wilson
cd6486b0e9
tests: fix more DisconnectTest raciness.
6 years ago
David Wilson
cf97932fad
core: dead messages have optional body, use it everywhere; closes #387 .
6 years ago
David Wilson
b0dd628f07
issue #406 : parent_test fixes, NameError in log_fd_calls().
6 years ago
David Wilson
70c550f50c
issue #406 : close stdout pipes in parent_test
6 years ago
David Wilson
8a0b343760
issue #406 : test for FD leak after every TestCase
6 years ago
David Wilson
48e8f1f7aa
tests: Pythonize write_all_consumer.py
6 years ago
David Wilson
f53e7dd637
tests: Pythonize another shell script.
6 years ago
David Wilson
332d128651
tests: get rid of some more shell
6 years ago
David Wilson
b70c57a2cb
tests: fix wstatus_to_str() test on 3.x
...
Now they use enums.
6 years ago
David Wilson
7647c95f34
issue #76 : add one more test for indirect siblings
6 years ago
David Wilson
431051f69b
issue #76 : parent: broadcast DEL_ROUTE to interested parties
...
Now rather than simply propagate DEL_ROUTE upwards towards the parent,
we broadcast it downward to any stream that ever sent a message toward
any of the routes that have just become disconnected.
6 years ago
David Wilson
3aa5c4c53d
issue #373 : parse the child process wait status
...
Don't log the raw waitpid() result, convert it to a useful string first.
6 years ago
David Wilson
c4c6ae88a4
parent: raise a descriptive error when openpty fails.
6 years ago
David Wilson
06e2e846c5
parent: don't generate illegal default remote names.
...
getpass.getuser() output may contain slashes, which must be avoided as
they break virtualenv when present in argv[0].
Closes #344 .
6 years ago
David Wilson
4ff47d6a93
parent: more 2/3x format fixes
6 years ago
David Wilson
6b4e047017
tests: 3.x parent_test fixes.
6 years ago
David Wilson
00edf0d66d
core: have ExternalContext accept a config dict rather than kwargs.
...
The parameter lists had gotten out of control.
7 years ago
David Wilson
7c5bbc5168
setns: support changing user.
...
To match existing third party plugin.
7 years ago
David Wilson
1be03eb458
parent: change create_child interface.
...
To allow for additional arguments.
7 years ago
David Wilson
e56608ab91
parent: don't wait for SIGTERM to complete.
7 years ago
David Wilson
9fe14e841c
parent: reap the child process if connection fails
...
For example if no response is received in :attr:`connect_timeout`
seconds, the child would be left running.
7 years ago
David Wilson
e43c6c531b
Mostly implement hybrid TTY/socket mode for sudo and SSH.
...
Presently there is still no mechanism to add :attr:`tty_stream` to the
multiplexer after connection is successful, but for now it's not
expected that anything will be logged to it anyway.
Closes #148 .
7 years ago
David Wilson
c6284e00e9
Use subprocess to start child processes; closes #185 .
7 years ago
David Wilson
4c433dbed1
parent_test: Add explanation.
7 years ago
David Wilson
bde1778373
tests: merge tty_create_child() test into parent_test and fix hang
7 years ago
David Wilson
48351a1889
issue #155 : parent: support Context.shutdown(), reap children on exit.
...
This permits graceful shutdown of individual contexts, without tearing
down everything.
Update mitogen.parent.Stream to also wait for the child to exit, to
prevent the buildup of zombie processes. This introduces a blocking wait
for process exit on the Broker thread, let's see if we can get away with
it. Chances are reasonable that it'll cause needless hangs on heavily
loaded machines.
7 years ago
Alex Willmer
f4405c6bbc
Split IterReadTest & WriteAllTest into test_parent
...
This matches their respective functions under test, which now reside in
mitogen.parent.
7 years ago