Commit Graph

67 Commits (b5953146193db40d019975f113b19d5cebf94895)

Author SHA1 Message Date
David Wilson 49aa8834b0 issue #164: split "examples" out into regression/integration tests. 6 years ago
David Wilson aa8d7a0250 issue #164: verify remote_tmp respected by code running remotely. 6 years ago
David Wilson e2542c1683 "examples": add perl script regression tests. 6 years ago
David Wilson 20044ba956 "examples": import all.yml 6 years ago
David Wilson d2c009f70f "examples": rename regtest.py -> compare_output_test.py
Incomplete, but getting better all the time.
6 years ago
David Wilson 047458a8b3 "examples": start adding structure to regression tests. 6 years ago
David Wilson 95ca29262a examples: add README.md to playbook/. 6 years ago
David Wilson f6b82bb8db examples: add make output to gitignore. 6 years ago
David Wilson 380ef7376d ansible: Add support for free strategy. 6 years ago
David Wilson 41ca3ad94b issue #106: delete junk from example module. 6 years ago
David Wilson 2c17d60ffd issue #106: import basic regtest.py 6 years ago
David Wilson 971b366162 issue #106: import many more test cases 6 years ago
David Wilson 23366b4580 issue #106: import binary modules. 6 years ago
David Wilson 17b94c56f4 issue #177: import reproduction. 6 years ago
David Wilson 76ac49dbdc examples: more comments. 6 years ago
David Wilson 9eccfb4972 examples: add top-level doc 6 years ago
David Wilson a68e833463 examples: add a ton of comments to mitop.py. 6 years ago
David Wilson 682a4ca8d4 issue #174: reproduction. 6 years ago
David Wilson 3579b6806b issue #152: reproduction for second problem 6 years ago
David Wilson 305e024819 issue #154: import user's reproduction 6 years ago
David Wilson 088fd76109 issue #152: import reproduction 6 years ago
David Wilson 051fb85d2d issue #150: 100 target docker inventory 6 years ago
David Wilson b64e52b1fd issue #150: tweak script for running without external IPs 6 years ago
David Wilson 8607680730 issue #150: quick script to run ansible against gcloud instance group 6 years ago
David Wilson 0f5a31fb52 issue #131: test with forks=50 6 years ago
David Wilson 3e40b9ab8e issue #131: import something clean that might tickle the problem 6 years ago
David Wilson 87435bf45d issue #140: nicer filetree construction 6 years ago
David Wilson 21a8026a63 issue #140: import reproduction 6 years ago
David Wilson f8738f1c52 issue #122: helper to print environment 6 years ago
David Wilson 6106c27707 ansible: repro for issue #118. 6 years ago
David Wilson 6ed731c088 Minor cleanup. 6 years ago
David Wilson cf01c6b710 importer: avoid duplicate module load(!); closes #113.
Amazed this one managed to scrape through for so long. Calling
__import__ from within find_module() was causing the target module, in
this case cookielib, to be loaded *then overwritten* by a subsequent
duplicate load higher in the stack.

The result is that cookielib was loaded twice, and, per usual Python
import semantics, a reference to the partially initialized first
cookielib was installed in sys.modules while its code executed.

At the end of cookielib on 2.x, it imports _LWPCookieJar, which in turn
imports the partially built cookielib from sys.modules, then subclasses
the CookieJar from /that/ module.

Everything is wonderful. Then the call returns back up into the import
mechanism which restarts the entire process -- only this time,
_LWPCookieJar is /not/ reinitialized, so the copy in sys.modules is
still left with types pointing at the old module!

So the duplicate import creates a new CookieJar which is not the base
class of LWPCookieJar. Tada! 3 hours debugging.

This is probably a performance fix in disguise, didn't realize things
were so broken. It may also be a regression elsewhere. Urgently need to
finish the tests.
6 years ago
David Wilson 316eebbe29 examples: enable the strategy by default 6 years ago
David Wilson 57b9d59e90 issue #113: import crash reproduction 6 years ago
David Wilson 23d104f73b examples: beginnings of repro for issue #109 6 years ago
David Wilson 88508fcb61 sudo: accept -n too (issue #108) 6 years ago
David Wilson 3ddbf1a503 ansible: basic support for ssh_args 6 years ago
David Wilson 1b2cbf1e00 examples: longer (but still crap) async_polling.yml 6 years ago
David Wilson e010e68874 examples: import broken non_python_modules.yml. 6 years ago
David Wilson 7080751f13 ansible: support environment: too. 6 years ago
David Wilson eaea8446ae examples: simplistic async_polling.yml 6 years ago
David Wilson 1f432abd2d Remove whoami.yml, it's now done by delegate_to.yml. 6 years ago
David Wilson 9fee0bd112 ansible: basic regression test for delegation/sudo 6 years ago
David Wilson 1b090a6c0a ansible: fix become:true with sudo:true 6 years ago
David Wilson f3315fc172 ansible: better emulate _low_level_execute_command()
Still needs a ton of work to emulate argument handling, shell selection,
and output emulation in every case. Unsurprisingly, Ansible documents
none of this.
6 years ago
David Wilson 6d403481d4 examples: simplify example playbooks. 6 years ago
David Wilson 10c2de2845 examples: rename playbooks for clarity. 6 years ago
David Wilson 875ee29d4f docs: initial Ansible extension docs. 6 years ago
David Wilson 1fb848b5e6 examples: add test case for local Ansible connections 6 years ago
David Wilson 4aacf2da4c ansible: we're gonna need more playbook steps 6 years ago