bitbake: bitbake/cookerdata: Explicitly specify cooker configuration options

As the code stands today its hard to know which configuration variables
are used by which parts of the system. Some are used by the UIs, some
by bin/bitbake itself, some by cooker.

This patch changes the configuration to just contain the variables cooker
uses, and changes bin/bitbake to access the variables it needs directly
which hopefully lets us start to untangle this mess.

(Bitbake rev: e57497a24b6157c92519a34accd66035a39ad1f8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2013-05-20 23:01:48 +01:00
parent 26d19996a3
commit ba707d0ffa
2 changed files with 21 additions and 12 deletions

View File

@ -193,8 +193,8 @@ def main():
# Server type can be xmlrpc, process or none currently, if nothing is specified,
# the default server is process
if configuration.servertype:
server_type = configuration.servertype
if configParams.servertype:
server_type = configParams.servertype
else:
server_type = 'process'
@ -205,13 +205,13 @@ def main():
sys.exit("FATAL: Invalid server type '%s' specified.\n"
"Valid interfaces: xmlrpc, process [default], none." % servertype)
if configuration.server_only:
if configuration.servertype != "xmlrpc":
if configParams.server_only:
if configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '--server-only' is defined, we must set the servertype as 'xmlrpc'.\n")
if not configuration.bind:
if not configParams.bind:
sys.exit("FATAL: The '--server-only' option requires a name/address to bind to with the -B option.\n")
if configuration.bind and configuration.servertype != "xmlrpc":
if configParams.bind and configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
if "BBDEBUG" in os.environ:
@ -219,7 +219,7 @@ def main():
if level > configuration.debug:
configuration.debug = level
bb.msg.init_msgconfig(configuration.verbose, configuration.debug,
bb.msg.init_msgconfig(configParams.verbose, configuration.debug,
configuration.debug_domains)
# Ensure logging messages get sent to the UI as events
@ -230,8 +230,8 @@ def main():
cleanedvars = bb.utils.clean_environment()
server = server.BitBakeServer()
if configuration.bind:
server.initServer((configuration.bind, 0))
if configParams.bind:
server.initServer((configParams.bind, 0))
else:
server.initServer()
@ -262,7 +262,7 @@ def main():
logger.removeHandler(handler)
if not configuration.server_only:
if not configParams.server_only:
# Setup a connection to the server (cooker)
server_connection = server.establishConnection()

View File

@ -117,11 +117,20 @@ class CookerConfiguration(object):
self.postfile = []
self.debug = 0
self.cmd = None
self.abort = True
self.force = False
self.ui = None
self.profile = False
self.nosetscene = False
self.invalidate_stamp = False
self.dump_signatures = False
self.dry_run = False
def setConfigParameters(self, parameters):
self.params = parameters
for key, val in parameters.options.__dict__.items():
setattr(self, key, val)
for key in self.__dict__.keys():
if key in parameters.options.__dict__:
setattr(self, key, parameters.options.__dict__[key])
def setServerRegIdleCallback(self, srcb):
self.server_register_idlecallback = srcb