bitbake: bitbake: cooker, command: add a command to return global data

Adding the 'getAllKeysWithFlags' read-only command that will
return a dump of the global data state, together with specified
flags for each key. The flag list is passed in as the first
parameter to the command.

This will be used by UI clients to get the build configuration.

(Bitbake rev: 3e094da513e1220319288806cb76ddf804772afd)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexandru DAMIAN 2013-09-18 13:15:51 +01:00 committed by Richard Purdie
parent 0c51d610e1
commit a05d474e5a
2 changed files with 24 additions and 0 deletions

View File

@ -145,6 +145,15 @@ class CommandsSync:
"""
command.cooker.shutdown(True)
def getAllKeysWithFlags(self, command, params):
"""
Returns a dump of the global state. Call with
variable flags to be retrieved as params.
"""
flaglist = params[0]
return command.cooker.getAllKeysWithFlags(flaglist)
getAllKeysWithFlags.readonly = True
def getVariable(self, command, params):
"""
Read the value of a variable from data

View File

@ -1154,6 +1154,21 @@ class BBCooker:
self.configuration.server_register_idlecallback(buildTargetsIdle, rq)
def getAllKeysWithFlags(self, flaglist):
dump = {}
for k in self.data.keys():
try:
v = self.data.getVar(k, True)
if not k.startswith("__") and not isinstance(v, bb.data_smart.DataSmart):
dump[k] = { 'v' : v }
for d in flaglist:
dump[k][d] = self.data.getVarFlag(k, d)
except Exception as e:
print(e)
return dump
def generateNewImage(self, image, base_image, package_queue, timestamp, description):
'''
Create a new image with a "require"/"inherit" base_image statement