oeqa/utils/sshcontrol: increase and log timeout in output

Increase a bit the timeout for ssh commands and also
write in the output that the command timed out (it's
easier to see that in a test fail than checking the ssh log)

(From OE-Core rev: 652a1762c8adc3b8cb1c6db2ee4a5234a7436c8d)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Stefan Stanacar 2013-07-24 11:43:18 +03:00 committed by Richard Purdie
parent 9de0ad4746
commit e678a4552a
1 changed files with 6 additions and 4 deletions

View File

@ -13,7 +13,7 @@ import os
class SSHControl(object):
def __init__(self, host=None, timeout=200, logfile=None):
def __init__(self, host=None, timeout=300, logfile=None):
self.host = host
self.timeout = timeout
self._out = ''
@ -52,9 +52,10 @@ class SSHControl(object):
self._ret = sshconn.poll()
else:
if timeout is None:
endtime = time.time() + self.timeout
tdelta = self.timeout
else:
endtime = time.time() + timeout
tdelta = timeout
endtime = time.time() + tdelta
while sshconn.poll() is None and time.time() < endtime:
time.sleep(1)
# process hasn't returned yet
@ -64,7 +65,8 @@ class SSHControl(object):
sshconn.kill()
self._out = sshconn.stdout.read()
sshconn.stdout.close()
self.log("[!!! process killed]")
self._out += "\n[!!! SSH command timed out after %d seconds and it was killed]" % tdelta
self.log("[!!! SSH command timed out after %d seconds and it was killed]" % tdelta)
else:
self._out = sshconn.stdout.read()
self._ret = sshconn.poll()