community.general/lib/ansible/runner
Jesse Keating 8cef210aea Make sure ssh pipes are empty before moving on
Resolves issue #5082

Code as it was would hit a scenario where one of the FDs was not ready for
reading the first time through -- but p.poll() would show the process as
complete. This would cause ansible to continue on, while leaving some content
left in a pipe.

The other scenario -- the one that causes the unclosed quote, is if we go
through select.select() and we do get stdout in the ready for reading -- we
read from it (9000 bytes), but that's not all that is there. Again we'd get to
the p.poll() check and it would be indeed not none, but we would have left some
of stdout on the FD and thus the json blob would be malformed.

Tested with and without full ssh debugging.
Tested with and without ControlPersist
Tested with and without ControlPersist sockets already created
2013-12-11 21:32:37 -08:00
..
action_plugins Had to revert commits due to async. 2013-12-10 19:24:08 -05:00
connection_plugins Make sure ssh pipes are empty before moving on 2013-12-11 21:32:37 -08:00
filter_plugins now correctly spell symmetric 2013-11-19 14:48:11 -05:00
lookup_plugins Fixes #4979 Check for the correct context when inside the inventory_hostnames plugin 2013-11-25 10:57:10 -05:00
__init__.py Revert "ssh_alt.py / decrease # of ssh roundtrips" 2013-12-10 19:23:52 -05:00
connection.py Make private key customizable per host using ansible_ssh_private_key_file configurable as variable 2013-04-05 14:50:15 -04:00
poller.py Clear out complex_args before running async_status 2013-10-09 15:08:47 -05:00
return_data.py Add failed_when module variable. 2013-09-10 08:34:01 +09:00