lib/oeqa/runtime: smart: serve repo on host ip only and increase timeout

Don't start the http server on 0.0.0.0, listen on host ip (end of tap interface) only.
Also use the timeout option (default is 300s for ssh commands) for all the commands
run in this module (mostly because smart update timeouts on mips).

(From OE-Core rev: 8c272641ef3e8410f331ca4133d28dea8f36e4f4)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Stefan Stanacar 2013-09-03 16:01:11 +03:00 committed by Richard Purdie
parent 8318816e27
commit e3bc93c2eb
2 changed files with 5 additions and 4 deletions

View File

@ -17,7 +17,7 @@ class SmartTest(oeRuntimeTest):
@skipUnlessPassed('test_smart_help')
def smart(self, command, expected = 0):
command = 'smart %s' % command
status, output = self.target.run(command)
status, output = self.target.run(command, 500)
message = os.linesep.join([command, output])
self.assertEqual(status, expected, message)
self.assertFalse("Cannot allocate memory" in output, message)
@ -48,7 +48,7 @@ class SmartRepoTest(SmartTest):
@classmethod
def setUpClass(self):
self.repo_server = HTTPService(oeRuntimeTest.tc.d.getVar('DEPLOY_DIR', True))
self.repo_server = HTTPService(oeRuntimeTest.tc.d.getVar('DEPLOY_DIR', True), oeRuntimeTest.tc.qemu.host_ip)
self.repo_server.start()
@classmethod

View File

@ -15,12 +15,13 @@ class HTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
class HTTPService(object):
def __init__(self, root_dir):
def __init__(self, root_dir, host=''):
self.root_dir = root_dir
self.host = host
self.port = 0
def start(self):
self.server = HTTPServer(('', self.port), HTTPRequestHandler)
self.server = HTTPServer((self.host, self.port), HTTPRequestHandler)
if self.port == 0:
self.port = self.server.server_port
self.process = multiprocessing.Process(target=self.server.server_start, args=[self.root_dir])