David Wilson
5af6c9b26f
issue #615 : use FileService for target->controll file transfers
5 years ago
David Wilson
8bac1cf368
issue #482 : another Py3 fix
5 years ago
David Wilson
cf23d0dee6
issue #279 : add one more test for max_message_size
5 years ago
David Wilson
1e3621a88b
tests: fix format string error
5 years ago
David Wilson
83a86a2ce1
issue #482 : tests: fail DockerMixin tests if stray processes exist
5 years ago
David Wilson
5924af1566
[security] core: undirectional routing wasn't respected in some cases
...
When creating a context using Router.method(via=somechild),
unidirectional mode was set on the new child correctly, however if the
child were to call Router.method(), due to a typing mistake the new
child would start without it.
This doesn't impact the Ansible extension, as only forked tasks are
started directly by children, and they are not responsible for routing
messages.
Add test so it can't happen again.
5 years ago
David Wilson
ecc570cbda
select: make Select.add() handle multiple buffered items.
...
Previously given something like:
l = mitogen.core.Latch()
l.put(1)
l.put(2)
s = mitogen.select.Select([l], oneshot=False)
assert 1 == s.get(block=False)
assert 2 == s.get(block=False)
The second call would throw TimeoutError, because Select.add() only
queued the receiver/latch once if it was non-empty, rather than once for
each item as should happen.
5 years ago
David Wilson
c0d87c0aa1
testlib: use lsof +E for much clearer leaked FD output
5 years ago
David Wilson
f4cee16526
parent: zombie reaping v3
...
Improvements:
- Refactored off Process, separately testable without a connection
- Don't delay Broker shutdown indefinitely for detached children
5 years ago
David Wilson
9c0cb44ee9
issue #170 : replace Timer.cancelled with Timer.active
...
It's more flexable: False can represent 'cancelled' or 'expired',
whereas setting cancelled=True for an expired timer didn't feel right.
5 years ago
David Wilson
22a07a043b
tests: fix error in affinity_test
5 years ago
David Wilson
212f6a3529
tests: stop dumping Docker help output in the log.
5 years ago
David Wilson
711f46aee9
tests: move tty_create_child tests together
5 years ago
David Wilson
aa06b960f5
parent: define Connection behaviour during Broker.shutdown()
...
- Connection attempt fails reliably, and it fails with CancelledError
- Add new mitogen.core.unlisten()
- Add test.
5 years ago
David Wilson
19b259a45f
issue #549 : skip Docker tests if Docker is unavailable
5 years ago
David Wilson
dcfd733e6f
issue #549 : remove Linux-specific assumptions from create_child_test
...
Some stat fields are implementation-specific, little value even testing
them on Linux
5 years ago
David Wilson
e4321f81a0
issue #600 : /etc/environment may be non-ASCII in an unknown encoding
5 years ago
David Wilson
b75198396d
Fix unit_Test.ClientTest following 108015aa22
...
Closes #604
5 years ago
David Wilson
28b4d63e49
tests: terraform tweaks
5 years ago
David Wilson
5ed0b93669
tests: update gcloud.py to match terraform config
5 years ago
David Wilson
de2e1ec184
tests/ansible/gcloud: terraform conf for load testing
5 years ago
David Wilson
108015aa22
ansible: gracefully handle failure to connect to MuxProcess
...
It's possible to hit an ugly exception during early CTRL+C
5 years ago
David Wilson
a9d3fdf6b7
ansible: fix affinity tests for 5ae45f6612390bbc888b65964fb5c218feed1679
5 years ago
David Wilson
ebb4a7ca6a
issue #543 : dumb fix for file vs. stat :(
5 years ago
David Wilson
f3915b5f40
issue #543 : disable host key checking
5 years ago
David Wilson
0741876392
issue #543 : Hide Mitogen test users from gdm
5 years ago
David Wilson
17d0e1b315
issue #543 : skip test that's hard to do on Mac
5 years ago
David Wilson
0e55bb3eb7
image_prep: ensure Mac users can SSH without manual intervention
5 years ago
David Wilson
501cfca82b
issue #543 : make localhost_ansible_tests run locally
5 years ago
David Wilson
115145555e
[linear2] fix another test relying on Connection.parent
5 years ago
David Wilson
a39169ff16
[linear2] fix mitogen_shutdown_all service context access
5 years ago
David Wilson
1fca0b7a94
[linear2] fix MuxProcess test fixture and some merge fallout
5 years ago
David Wilson
9035884c77
ansible: abstract worker process model.
...
Move all details of broker/router setup out of connection.py, instead
deferring it to a WorkerModel class exported by process.py via
get_worker_model(). The running strategy can override the configured
worker model via _get_worker_model().
ClassicWorkerModel is installed by default, which implements the
extension's existing process model.
Add optional support for the third party setproctitle module, so
children have pretty names in ps output.
Add optional support for per-CPU multiplexers to classic runs.
5 years ago
David Wilson
6da991fae9
[stream-refactor] Py3.x test fixes
5 years ago
David Wilson
87440ec6f7
[stream-refactor] Debian Docker container image initctl
5 years ago
David Wilson
0e6de532de
[stream-refactor] fix testlib assertion format string
5 years ago
David Wilson
5f7ab220cb
[stream-refactor] statically link doas binary using musl
...
So it can run on CentOS 5
5 years ago
David Wilson
462c4ff59f
[stream-refactor] stop writing to /tmp/foo in fd_check.py.
5 years ago
David Wilson
cd0a557602
[stream-refactor] yet another 2.4 issue in create_child_test
5 years ago
David Wilson
54987100b2
[stream-refactor] allow up to 30 seconds to connect in unix_test
...
It reliably fails when running on a (intentionally) heavily loaded
machine
5 years ago
David Wilson
db9066fbfb
[stream-refactor] mark setns module as requiring Python >2.4
5 years ago
David Wilson
856dfcebcd
[stream-refactor] another 2.4 fix for create_child_test
5 years ago
David Wilson
bed5931194
[stream-refactor] remove one more getuser() usage
5 years ago
David Wilson
2f950b3bda
[stream-refactor] allow doas_test to succeed on CentOS
...
Unlike on Debian, some environment variables that tickle
getpass.getuser() are being inherited. So use getuid() instead.
Also install the doas binary on CentOS. CI was changed (I believe) to
shrink the configuration matrix, and now these tests run on CentOS too.
5 years ago
David Wilson
2ba3973bc5
Pin idna==2.7 when running on Python<2.7.
5 years ago
David Wilson
07f3179e58
[stream-refactor] Py2.4 compat fix for iter_split_test.
5 years ago
David Wilson
f0065d76d8
[stream-refactor] add descriptive task names to _container_prep
5 years ago
David Wilson
bd80d4b0af
[stream-refactor] avoid os.wait3() for Py2.4.
5 years ago
David Wilson
1aceacf89e
[stream-refactor] replace old detach_popen() reference
5 years ago
David Wilson
300f8b2ff9
ansible: fixturize creation of MuxProcess
...
This relies on the previous commit resetting global variables.
Update clean_shutdown() to handle duplicate calls, due to tests
repeatedly installing it.
5 years ago