summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSujith H <sujith.h@gmail.com>2016-04-06 17:46:33 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-04-06 23:00:10 +0100
commite15151106aae21d3b164ca868be42bd63905f0a1 (patch)
treef36f62fdcf4894054225f8192fc1b095a97663c7
parent61a21d96abab113cbd13376cdb8b08a426b50538 (diff)
downloadopenembedded-core-contrib-e15151106aae21d3b164ca868be42bd63905f0a1.tar.gz
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] 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>
-rw-r--r--lib/toaster/bldcontrol/bbcontroller.py26
-rw-r--r--lib/toaster/bldcontrol/localhostbecontroller.py2
2 files changed, 5 insertions, 23 deletions
diff --git a/lib/toaster/bldcontrol/bbcontroller.py b/lib/toaster/bldcontrol/bbcontroller.py
index 0f7b66d2e6..d09ac17875 100644
--- a/lib/toaster/bldcontrol/bbcontroller.py
+++ b/lib/toaster/bldcontrol/bbcontroller.py
@@ -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
diff --git a/lib/toaster/bldcontrol/localhostbecontroller.py b/lib/toaster/bldcontrol/localhostbecontroller.py
index 73c5f1ff80..d23634fb8f 100644
--- a/lib/toaster/bldcontrol/localhostbecontroller.py
+++ b/lib/toaster/bldcontrol/localhostbecontroller.py
@@ -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")