Hello,
Maybe it's a good idea to increase the command timeout for SSH
connections. A first yum action can take quite some time since it's
loading all the metadata. I hit the socket timeout of 10 seconds
there:
fatal: [rh6oranode2] => Traceback (most recent call last):
File "/home/jeroen/dev/ansible/work/lib/ansible/runner.py", line
572, in _executor
(host, ok, data, err) = self._executor_internal(host)
File "/home/jeroen/dev/ansible/work/lib/ansible/runner.py", line
611, in _executor_internal
result = self._execute_normal_module(conn, host, tmp, module_name)
File "/home/jeroen/dev/ansible/work/lib/ansible/runner.py", line
352, in _execute_normal_module
(result, err, executed) = self._execute_module(conn, tmp, module,
self.module_args)
File "/home/jeroen/dev/ansible/work/lib/ansible/runner.py", line
299, in _execute_module
res, err = self._exec_command(conn, cmd, tmp, sudoable=True)
File "/home/jeroen/dev/ansible/work/lib/ansible/runner.py", line
644, in _exec_command
err="\n".join(stderr.readlines())
File "/home/jeroen/dev/ansible/lib/python2.7/site-packages/paramiko/file.py",
line 259, in readlines
line = self.readline()
File "/home/jeroen/dev/ansible/lib/python2.7/site-packages/paramiko/file.py",
line 214, in readline
new_data = self._read(n)
File "/home/jeroen/dev/ansible/lib/python2.7/site-packages/paramiko/channel.py",
line 1227, in _read
return self.channel.recv_stderr(size)
File "/home/jeroen/dev/ansible/lib/python2.7/site-packages/paramiko/channel.py",
line 636, in recv_stderr
raise socket.timeout()
timeout
Connection.py reuses the runner timeout as documented there:
# reusing runner's TCP connect timeout as command progress timeout (correct?)
Runner timeout is 10 seconds. I believe we don't want to couple these
values. Any suggestions as to what a correct value should be?
A workaround for now is running the task as async...
Greetings,
Jeroen