Commit Graph

200 Commits

Author SHA1 Message Date
David Wilson 17d0e1b315 issue #543: skip test that's hard to do on Mac 2019-07-31 00:15:05 +01:00
David Wilson 115145555e [linear2] fix another test relying on Connection.parent 2019-07-29 18:07:01 +01:00
David Wilson ee7dae7514 ci: Another round of fixes for random Ansible UI breakage in 2.7/2.8 2019-06-04 14:19:08 +01:00
David Wilson ad5a80f200 Use virtualenv Python for stub connections to workaround problem
../data/stubs/stub-kubectl.py exec -it localhost -- /usr/bin/python -c "...":

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    LookupError: unknown encoding: base64

It's not clear why this is happening. "stub-kubectl.py" is executed with
the 2.7 virtualenv, while the exec() that happens inside stub-kubectl
was for "/usr/bin/python".

That second Python can't find chunks of its stdlib:

    stat("/usr/lib/python2.7/encodings/base64", 0x7ffde8744c60) = -1 ENOENT (No such file or directory)
    open("/usr/lib/python2.7/encodings/base64.so", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/usr/lib/python2.7/encodings/base64module.so", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/usr/lib/python2.7/encodings/base64.py", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/usr/lib/python2.7/encodings/base64.pyc", O_RDONLY) = -1 ENOENT (No such file or directory)
    write(2, "Traceback (most recent call last):\n", 35) = 35
    write(2, "  File \"<string>\", line 1, in <module>\n", 39) = 39
2019-06-04 13:37:00 +01:00
David Wilson 08e7fe4f80 tests: add 2.8 format async error timeout message 2019-06-04 00:47:15 +01:00
David Wilson 3620fce071 issue #593: expose configurables for SSH keepalive and increase the default 2019-06-03 17:40:58 +01:00
David Wilson 61b651bdd2 issue #587: workaround for ansible/ansible#56629 2019-05-27 20:15:02 +01:00
David Wilson 92b4724010 issue #587: consistent become_exe() behaviour for older Ansibles. 2019-05-27 14:59:57 +01:00
David Wilson a25fa566a1 issue #587: update stub_connections/ test to use new doas var 2019-05-27 14:59:57 +01:00
David Wilson a3be746865 issue #587: update MODULE FAILURE message format for post >2.7 2019-05-27 14:59:57 +01:00
David Wilson 54b5fdf761 issue #587: fix syntax error due to presence of comment 2019-05-27 14:59:57 +01:00
David Wilson b8e1b4df51 issue #587: 2.8 whitespace handling was improved.
b72e989e18
2019-05-26 17:11:27 +01:00
David Wilson f30a4c05c8 issue #581: expose mitogen_mask_remote_name variable. 2019-04-16 22:46:12 +01:00
David Wilson 2bd0bbd4df issue #555: ansible: workaround ancient reload(sys) hack.
This is the most minimal change for what might be relatively minimal
edge case. Alternative is replacing reload(), but let's not do that yet.

Closes #555
2019-03-06 14:05:29 +00:00
David Wilson 6309774be2 issue #554: fix Ansible 2.4 compatibility 2019-03-06 12:06:55 +00:00
David Wilson f36b4b47bf issue #554: don't rely on tmp_path autoremoval in test.
Ansible doesn't do this, so we shouldn't either.
2019-03-06 11:22:40 +00:00
David Wilson 7743e57ff3 issue #554: track and remove multiple make_tmp_path() calls. 2019-03-06 10:55:07 +00:00
David Wilson 26e6194d0a issue #548: always treat transport=smart as 'ssh' for mitogen_via=.
The idea behind transport=smart is to select between paramiko and
OpenSSH given the availability of connection multiplexing and/or OSX
kernel bugs. We need to make no such choice.
2019-02-19 16:26:47 +00:00
David Wilson 7fd0d34910 tests/ansible: Spec.port() test & mitogen_via= fix.
ansible_ssh_port was not respected.
2019-02-13 16:32:11 +00:00
David Wilson b5b23e8f3d tests/ansible: Spec.become_pass() test. 2019-02-13 16:14:15 +00:00
David Wilson 7b3ed52fd8 tests/ansible: Spec.become_user() test. 2019-02-13 04:04:54 +00:00
David Wilson 1c955a9876 ansible: capture stderr stream of async tasks. Closes #540. 2019-02-13 03:36:39 +00:00
David Wilson 8ae6ca1d5b tests/ansible: Spec.become_method() test & mitogen_via= fix.
ansible_become_method hostvar was not taken into account.
2019-02-12 16:32:11 +00:00
David Wilson 8ba75d82ec tests/ansible: Spec.become() test 2019-02-12 16:12:05 +00:00
David Wilson d1cadf8ac8 tests/ansible: Spec.password() test, document interactive pw limitation. 2019-02-12 16:04:05 +00:00
David Wilson 21ad299d7b tests/ansible: Spec.remote_user() test & mitogen_via= fix.
ansible_ssh_user precedence was incorrect.
2019-02-12 14:52:36 +00:00
David Wilson 748f5f675d tests/ansible: Spec.remote_addr() test & mitogen_via= fix.
ansible_ssh_host was not respected.
2019-02-12 14:45:46 +00:00
David Wilson 8fd641c442 tests/ansible: Spec.transport() test. 2019-02-12 14:33:36 +00:00
David Wilson e1df98168c issue #536: add mitogen_via= tests too. 2019-02-12 02:12:39 +00:00
David Wilson b3f20f54e6 issue #536: disable transport_config tests on vanilla 2019-02-12 00:42:41 +00:00
David Wilson 1d43e187e8 issue #536: connection_delegation/ tests were erroneously broken
While fixing delegate_to, this un-hardwiring of /usr/bin/python
happened. It was always incorrect.
2019-02-12 00:12:28 +00:00
David Wilson 01faed708d issue #536: add tests for each ansible_python_interpreter case. 2019-02-12 00:12:25 +00:00
David Wilson 2aed0a0c6c tests: add new compression parameter to mitogen_get_stack results 2019-02-09 23:02:56 +00:00
David Wilson b72d139bd2 tests: make soak testing work reliably on vanilla.
It claims to disable host key checking, but it doesn't.
2019-02-09 22:04:19 +00:00
David Wilson 954f874085 issue #527: catch new-style module tracebacks like vanilla. 2019-02-09 19:43:35 +00:00
David Wilson a40946297f issue #497: do our best to cope with crap upstream code 2019-01-29 06:01:48 +00:00
David Wilson 9df314f9c5 issue #499: another totally moronic implementation difference 2019-01-29 03:55:18 +00:00
David Wilson 53794469a0 issue #499: disable new test on vanilla. 2019-01-29 03:26:21 +00:00
David Wilson a1121c5a84 issue #499: respect C.BECOME_ALLOW_SAME_USER. 2019-01-29 02:53:21 +00:00
David Wilson b254051416 ansible: add test to ensure UNIX socket is cleaned on exit; closes #488. 2019-01-27 19:29:16 +00:00
David Wilson a7da1b048b tests: just disable the test. 2019-01-27 06:37:06 +00:00
David Wilson cdb1434809 tests: hopefully fix this dumb test for the final time 2019-01-27 06:21:14 +00:00
David Wilson a67cc85bdb issue #477: use MITOGEN_INVENTORY_FILE everywhere. 2019-01-27 05:45:24 +00:00
David Wilson ea23d7fd54 issue #477: hacksmash weird 2.3 inventory_file var issue. 2019-01-27 05:31:26 +00:00
David Wilson e133b8dbb1 issue #477: some more conditional tests. 2019-01-27 04:43:12 +00:00
David Wilson 599da0689a issue #477 / ansible: avoid a race in async job startup.
Ansible 2.3/Python 2.4 work revealed there is no guarantee a slow target
will have written the initial job status file out before a fast
controller makes an initial check for it. Therefore, provide AsyncRunner
with a sender it should send a message to when the initial job file has
been written.

As a bonus, also catch and report exceptions happening early in
AsyncRunner, rather than leaving them to end up in -vvv output.
2019-01-27 04:27:41 +00:00
David Wilson c61498202e issue #477: use assert_equal for nicer debug. 2019-01-27 03:50:41 +00:00
David Wilson 5e4066bb64 issue #477: add Connection.homedir test. 2019-01-27 03:30:30 +00:00
David Wilson 8385c38cff issue #477: paper over Ansible 2.3 flag handling difference 2019-01-27 02:30:59 +00:00
David Wilson b67e4e118e issue #477: update forking_correct_parent for subprocess isolation 2019-01-27 02:16:43 +00:00