|
|
@ -44,6 +44,7 @@ import ansible.errors
|
|
|
|
import ansible.plugins.connection
|
|
|
|
import ansible.plugins.connection
|
|
|
|
import ansible.utils.shlex
|
|
|
|
import ansible.utils.shlex
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import mitogen.core
|
|
|
|
import mitogen.fork
|
|
|
|
import mitogen.fork
|
|
|
|
import mitogen.unix
|
|
|
|
import mitogen.unix
|
|
|
|
import mitogen.utils
|
|
|
|
import mitogen.utils
|
|
|
@ -340,12 +341,21 @@ CONNECTION_METHOD = {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Broker(mitogen.master.Broker):
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
WorkerProcess maintains at most 2 file descriptors, therefore does not need
|
|
|
|
|
|
|
|
the exuberant syscall expense of EpollPoller, so override it and restore
|
|
|
|
|
|
|
|
the poll() poller.
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
poller_class = mitogen.core.Poller
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CallChain(mitogen.parent.CallChain):
|
|
|
|
class CallChain(mitogen.parent.CallChain):
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|
Extend :class:`mitogen.parent.CallChain` to additionally cause the
|
|
|
|
Extend :class:`mitogen.parent.CallChain` to additionally cause the
|
|
|
|
associated :class:`Connection` to be reset if a ChannelError occurs.
|
|
|
|
associated :class:`Connection` to be reset if a ChannelError occurs.
|
|
|
|
|
|
|
|
|
|
|
|
This only catches failures that occur while a call is pnding, it is a
|
|
|
|
This only catches failures that occur while a call is pending, it is a
|
|
|
|
stop-gap until a more general method is available to notice connection in
|
|
|
|
stop-gap until a more general method is available to notice connection in
|
|
|
|
every situation.
|
|
|
|
every situation.
|
|
|
|
"""
|
|
|
|
"""
|
|
|
|