bitbake: toaster: update BuildEnvironmentController and BitbakeController

Remove getBBController function from BuildEnvironmentController.
The constructor of BitbakeController is updated appropriately so that
call can be made to connect to running server.
The call to startBBServer is removed from bbcontroller and  handledin
localhostbecontroller.

[YOCTO #6787]

(Bitbake rev: e15151106aae21d3b164ca868be42bd63905f0a1)

Signed-off-by: Sujith H <sujith.h@gmail.com>
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Sujith H
2016-04-06 17:46:33 +01:00
committed by Richard Purdie
parent 0db62c54a4
commit 5f862bb567
2 changed files with 5 additions and 23 deletions

View File

@@ -37,11 +37,12 @@ class BitbakeController(object):
It is outside the scope of this class on how the server is started and aquired
"""
def __init__(self, connection):
self.connection = connection
def __init__(self, be):
self.connection = bb.server.xmlrpc._create_server(be.bbaddress,
int(be.bbport))[0]
def _runCommand(self, command):
result, error = self.connection.connection.runCommand(command)
result, error = self.connection.runCommand(command)
if error:
raise Exception(error)
return result
@@ -122,25 +123,6 @@ class BuildEnvironmentController(object):
"""
raise NotImplementedError("FIXME: Must override setLayers")
def getBBController(self):
""" returns a BitbakeController to an already started server; this is the point where the server
starts if needed; or reconnects to the server if we can
"""
if not self.connection:
self.be.lock = BuildEnvironment.LOCK_RUNNING
self.be.save()
server = bb.server.xmlrpc.BitBakeXMLRPCClient()
server.initServer()
server.saveConnectionDetails("%s:%s" % (self.be.bbaddress, self.be.bbport))
self.connection = server.establishConnection([])
self.be.bbtoken = self.connection.transport.connection_token
self.be.save()
return BitbakeController(self.connection)
def getArtifact(self, path):
""" This call returns an artifact identified by the 'path'. How 'path' is interpreted as
up to the implementing BEC. The return MUST be a REST URL where a GET will actually return

View File

@@ -32,7 +32,7 @@ import subprocess
from toastermain import settings
from bbcontroller import BuildEnvironmentController, ShellCmdException, BuildSetupException
from bbcontroller import BuildEnvironmentController, ShellCmdException, BuildSetupException, BitbakeController
import logging
logger = logging.getLogger("toaster")