Commit Graph

635 Commits (ca4528ecfe8096d1687753bdcbbf586dd3fdc814)

Author SHA1 Message Date
David Wilson f420d876f2 issue #477: stop using fork in responder_test. 6 years ago
David Wilson 9d5b3d9e02 issue #477: stop using fork in service_test. 6 years ago
David Wilson 101e1c17b1 issue #477: stop using fork() in parent_test, compatible enumerate(). 6 years ago
David Wilson 9f10695ee2 issue #477: Popen.terminate() polyfill for Py2.4. 6 years ago
David Wilson b7f39f26cd issue #477: stop using .fork() in router_test, one small 2.4 fix. 6 years ago
David Wilson 9248b6d2b6 issue #477: old Py zlib did not include extended exception text. 6 years ago
David Wilson b831b4ab31 issue #477: stop using router.fork() in receiver_test 6 years ago
David Wilson a33767d31e issue #477: any() polyfill for lxc_test. 6 years ago
David Wilson 3b4f184298 issue #477: replace type(e) -> __class__ for an exception
Due to old style exception classes.
6 years ago
David Wilson b985224ff6 issue #477: old Mock does not throw side_effect exceptions from a list 6 years ago
David Wilson 6a2f88d6a3 issue #477: make mitogen.fork unsupported on Py<2.6. 6 years ago
David Wilson 51294db52d issue #477: fix 2 runner tests on Ansible 2.7. 6 years ago
David Wilson 01db198122 issue #477: fix new KwargsTest on Python 3.x. 6 years ago
David Wilson d4897d37bb issue #477: ModuleFinder now returns Unicode module names. 6 years ago
David Wilson c443244986 issue #477: Ansible 2.3 compatible regression/all.yml. 6 years ago
David Wilson 532ae92029 issue #477: Ansible 2.3 requires placeholder module for assert_equals 6 years ago
David Wilson 572db1a385 issue #477: build a CentOS 5/Py2.4 container + playbook compat fixes. 6 years ago
David Wilson 0b0ae5c971 issue #477: backport various test modules to Python 2.4. 6 years ago
David Wilson 462a8567e5 issue #477: add all() polyfill to custom_python_detect_environmnet 6 years ago
David Wilson e9706a4a09 issue #477: _update_linecache() must append newlines. 6 years ago
David Wilson 19b708e141 issue #415, #477: Poller must handle POLLHUP too.
Linux will fire poll() with simply the POLLHUP bit set even though it
was not requested, resulting in an infinite loop.
6 years ago
David Wilson 97a96f5dd8 issue #477: rename and add tests for polyfill functions. 6 years ago
David Wilson dc01f9e47e issue #477: Ansible 2.3 module output format difference.
Don't test for keys it doesn't set.
6 years ago
David Wilson b6062afe24 issue #477: Ansible 2.3 cannot use when: on an include.
So just use our magic action module to reset the connection instead.
6 years ago
David Wilson c1a4597e32 issue #477: tests: use Ansible 2.3-compatible include rather than import
This will break with Ansible 2.8. Probably going to end up with a regex
hack for CI.
6 years ago
David Wilson 83aff538b3 issue #477: testlib: Py2.4 did not have BaseException. 6 years ago
David Wilson be8562ce09 issue #477: Ansible 2.3 had stricter arg spec format. 6 years ago
David Wilson 0ee8ee78b8 issue #477: Py2.4 cannot tolerate unicode kwargs. 6 years ago
David Wilson 4388e794ce issue #477: Py2.4: enumerate() may return stopped threads. 6 years ago
David Wilson 07401d767a issue #477: Python 2.4 type(exc) returns old-style instance. 6 years ago
David Wilson 2ead451277 issue #477: Python 2.4 lacked str.partition. 6 years ago
David Wilson 2ec19f2374 issue #477: Python 2.4 lacked Thread.name. 6 years ago
David Wilson 2f016b5c7b issue #477: Python 2.4 lacked context managers. 6 years ago
David Wilson 66b64cae2c issue #477: older Ansibles had no vars plugin base class. 6 years ago
David Wilson d6945443b7 tests: add exact test for issue 251; closes #251. 6 years ago
David Wilson 23866084d7 issue #412: promote "mitogen_get_stack" to the main extension.
This is to make it easier for users to diagnose their own problems.
6 years ago
David Wilson 2ad05f1238 issue #251, #412, #434: fix connection configuration brainwrong
This refactors connection.py to pull the two huge dict-building
functions out into new transport_transport_config.PlayContextSpec and
MitogenViaSpec classes, leaving a lot more room to breath in both files
to figure out exactly how connection configuration should work.

The changes made in 1f21a30 / 3d58832 are updated or completely removed,
the original change was misguided, in a bid to fix connection delegation
taking variables from the wrong place when delegate_to was active.

The Python path no longer defaults to '/usr/bin/python', this does not
appear to be Ansible's normal behaviour. This has changed several times,
so it may have to change again, and it may cause breakage after release.

Connection delegation respects the c.DEFAULT_REMOTE_USER whereas the
previous version simply tried to fetch whatever was in the
'ansible_user' hostvar. Many more connection delegation variables closer
match vanilla's handling, but this still requires more work. Some of the
variables need access to the command line, and upstream are in the
process of changing all that stuff around.
6 years ago
David Wilson 8414ff21ca issue #434: tests: set a default remote_user in ansible.cfg. 6 years ago
David Wilson 1b8748a8d9 tests: use assert_equal in more places. 6 years ago
David Wilson d72567b15b tests: make assert_equal work on newer Ansibles. 6 years ago
David Wilson 8891b48080 tests: convert stack_construction.yml to assert_equal. 6 years ago
David Wilson 4256d2aa4b tests: make fork_histogram optional 6 years ago
David Wilson 17eff064b0 tests: use assert_equal in delegate_to_template.yml. 6 years ago
David Wilson 91c9aff9ff tests: import assert_equal action. 6 years ago
David Wilson 630c058a89 tests: rename 'delegation/' to 'connection_delegation/' 6 years ago
David Wilson f5d9af80ef tests: some more utility function tests + flake8. 6 years ago
David Wilson 0ba8cc7b61 tests: clean up / deduplicate Ansible inventory. 6 years ago
David Wilson 1555f23215 tests: add some more helper function tests. 6 years ago
David Wilson 9d9add3339 issue #414: reenable test. 6 years ago
David Wilson fcc403cc2f core: make Receiver.to_sender() use Router.myself(). 6 years ago
David Wilson 4bdf60326c issue #424: ansible: make put_file() raise AnsibleFileNotFound 6 years ago
David Wilson 06415bb720 issue #310: fix test failures, teach old import method new tricks
- don't try anything unless something really lives in sys.modules by
  that name
- non-ASCII files are possible
- the unimportable thing might be an extension module, we don't want
  that
6 years ago
David Wilson 6af1a64cce master: handle crazy non-modules in sys.modules again; closes #310. 6 years ago
David Wilson 7c33979e25 issue #415: add IPC latency bench. 6 years ago
David Wilson a8c056c27b issue #436: decode debug log lines on Python 3. 6 years ago
David Wilson 8380baf41b issue #461: Ansible 2.3 placeholder modules for action plug-ins. 6 years ago
David Wilson 822978520f issue #446: update Receiver.__iter__ to match
iter() previously relied on the fake dead message being enqueued.
6 years ago
David Wilson 386d869d5f tests: fix responder_test after removing unused imports 6 years ago
David Wilson 6592598999 tests: stray socket file left during unix_test. 6 years ago
David Wilson cce1dbf3b1 tests: quieten a bunch of spam printed during run 6 years ago
David Wilson b0e7c1a315 tests: fix /etc/environment test on vanilla
Use "meta: reset_connection" to ensure /etc/environment is reloaded.
Looks like this entire feature can be ripped out!
6 years ago
David Wilson 26fdbf70e0 tests: good_load_module_size check can't be exact
Since message contains pathnames that vary across machines
6 years ago
David Wilson ae03d5f4f1 issue #446: basic tests for Receiver._on_receive(). 6 years ago
David Wilson bcd9827c3b core: Latch.empty() improvements
- throw LatchError if the latch is closed.
- wrap with the lock to avoid unexpected weirdness.
6 years ago
David Wilson 388649df97 core: Receiver.close() now wakes all threads; closes #446. 6 years ago
David Wilson f2f41809ae issue #459: initial get_stats() implementation 6 years ago
David Wilson 1d97493fcd tests: fallout from #447. 6 years ago
David Wilson de719fa249 core: throw error on duplicate add_handler(); closes #447. 6 years ago
David Wilson dc92e529bc service: unregister receiver at shutdown; closes #445. 6 years ago
David Wilson 85e965118d Merge remote-tracking branch 'origin/issue462'
* origin/issue462:
  issue #462: docs: update Changelog.
  parent: cope with broken /dev/pts on Linux; closes #462.
6 years ago
David Wilson 9da6e6a9a8 tests: don't call Router.shutdown() twice.
Due to 497234e7 / issue #456.
6 years ago
David Wilson b2b7e7b06b tests: file_service_test fixes
Due to 6713b90acc
6 years ago
David Wilson a8921bb6ff tests: fix scaling in fork_histogram 6 years ago
David Wilson 6936b93b43 tests: import fork_histogram.py. 6 years ago
David Wilson 5a96d13fd8 issue #426: fix all.yml sorting, one more delegate_to 6 years ago
David Wilson bd82fa1986 issue #426: fix low_level_execute_command.yml breakage. 6 years ago
David Wilson a6e6bc4c71 issue #426: to_text filter. 6 years ago
David Wilson 9d87f03ab4 issue #426: disable Ansible smart transport. 6 years ago
David Wilson 49d37bfa2d issue #426: remove LANG and LC_ALL during tests. 6 years ago
David Wilson a6e6fd14be issue #426: more 2->3 test fixes. 6 years ago
David Wilson 67f710fd9b issue #426: use delegate_to in fixup_perms2 and copy.yml 6 years ago
David Wilson a4c7a98dd9 parent: cope with broken /dev/pts on Linux; closes #462. 6 years ago
David Wilson 3179951f5c issue #454: fix AttributeError and atexit.yml test. 6 years ago
David Wilson 1eb08fb5c5 core: docstring tidyups 6 years ago
David Wilson 497234e782 issue #456: core: raise error during defer() if Broker shutdown 6 years ago
David Wilson f20e0bbac1 service: Allow registering path prefixes with FileService.
e.g. service.register_prefix('/') disables all security checks.
6 years ago
David Wilson 6fafc0a631 select: Python 2.x required __nonzero__ for bool(Select) 6 years ago
David Wilson 300cb41e2e core: detect stream corruption. Closes #438. 6 years ago
David Wilson 3876590aa1 parent: add descriptive errors for unsupported call() types.
Closes #439.
6 years ago
David Wilson 22de7f0e72 issue #436: fix string parsing of mitogen_ssh_debug_level
It can be a string when specified on the command line.
6 years ago
David Wilson 44d6ca771a issue #426: fix local/delegate_to issue 6 years ago
David Wilson 934d8ac139 issue #426: fix 2->3 issue in plain_old_module. 6 years ago
David Wilson 3206d59c87 issue #426: teach DockerMixin to allow selecting interpreter 6 years ago
David Wilson f1661abe4e tests: make IterReadTest a little more robust 6 years ago
David Wilson bef4b0c962 tests: fix copy.yml title 6 years ago
David Wilson 2a6dbb038f Pythonize, split out and parallelize all jobs. 6 years ago
David Wilson b60a6d0f3b Split dev_requirements.txt up according to test mode. 6 years ago
David Wilson fccf424140 tests: Pythonize print_env.sh. 6 years ago
David Wilson 8f1f3de123 tests: Pythonize env_wrapper.sh, clean up local_test 6 years ago
David Wilson a717c5406c tests: split etc_environment test in two
Turns out nobody supports ~/.pam_environment any more. Keep the
behaviour around for the time being.
6 years ago