Commit Graph

336 Commits

Author SHA1 Message Date
David Wilson 1aceacf89e [stream-refactor] replace old detach_popen() reference 2019-07-23 14:07:00 +01:00
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.
2019-07-23 14:04:22 +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 418fc15e80 tests: allow running without hdrhistograms library. 2019-06-03 20:45:48 +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 e90c05dc9d issue #591: fix test for Ansible 2.3. 2019-06-03 02:45:15 +01:00
David Wilson 0b7fd3f290 issue #591: ansible: restore CWD prior to AnsibleModule initialization. 2019-06-03 02:34:40 +01:00
David Wilson fe7c3610ff issue #590: disable distro test on vanilla 2019-06-02 20:52:18 +01:00
David Wilson a1f2ec222d issue #590: fix test for <2.8 Ansibles. 2019-06-02 19:38:42 +01:00
David Wilson e94200aeb9 issue #590: actually run Ansible test. 2019-06-02 19:13:23 +01:00
David Wilson 7a5c436a39 issue #590: Ansible test for module_utils.distro use. 2019-06-02 13:24:32 +01:00
David Wilson 61b651bdd2 issue #587: workaround for ansible/ansible#56629 2019-05-27 20:15:02 +01:00
David Wilson 8a18d1862e issue #587: "state: absent" was removed in 2.8.0
ansible/cc9c72d6f845710b24e952670b534a57f6948513
2019-05-27 15:10:16 +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 ce80e326fe issue #587: disable deprecation_warnings for CI.
Our use case justifies it
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 c616359a17 Import include processing bench 2019-05-19 15:50:02 +01:00
David Wilson f30a4c05c8 issue #581: expose mitogen_mask_remote_name variable. 2019-04-16 22:46:12 +01:00
David Wilson 65deb3feac issue #575: fix exception text rendering 2019-04-02 14:06:41 +01:00
David Wilson 3ff6123483 issue #557: support correct cpu_set_t size 2019-03-06 17:55:31 +00: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 30b8172573 issue #554: mitogen_action_script fix 2019-03-06 13:15:45 +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 0aa4c9d8fc issue #542: .ci: move some tests to Azure and enable Mac job. 2019-02-14 12:49:56 +00:00
David Wilson 5ed445c4aa issue #537: disable just the trivial LinuxPolicyTest on Travis. 2019-02-14 00:57:49 +00:00
David Wilson 8f9c67daf1 ansible: refactor affinity class and add abstract tests. 2019-02-14 00:35:16 +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 2f29c76eec tests: for 2.3 compatibility, disable gcloud.py for now 2019-02-12 02:10:11 +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 0dfcf5560b tests: define MITOGEN_INVENTORY_FILE even if -i unspecified.
To fix running tests locally.
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