diff options
-rw-r--r-- | bitbake/lib/bb/event.py | 9 | ||||
-rw-r--r-- | bitbake/lib/bb/server/xmlrpc.py | 3 | ||||
-rw-r--r-- | bitbake/lib/bb/ui/toasterui.py | 6 |
3 files changed, 16 insertions, 2 deletions
diff --git a/bitbake/lib/bb/event.py b/bitbake/lib/bb/event.py index 5ffe89eae3e..03bb94e578d 100644 --- a/bitbake/lib/bb/event.py +++ b/bitbake/lib/bb/event.py @@ -444,6 +444,14 @@ class MultipleProviders(Event): """ return self._candidates +class TargetsAcquired(Event): + """Target we are aiming at known""" + def __init__(self, targetList): + Event.__init__(self) + self._pkgs = targetList + + + class ParseStarted(OperationStarted): """Recipe parsing for the runqueue has begun""" def __init__(self, total): @@ -676,4 +684,3 @@ class NetworkTestFailed(Event): """ Event to indicate network test has failed """ - diff --git a/bitbake/lib/bb/server/xmlrpc.py b/bitbake/lib/bb/server/xmlrpc.py index 1ceca51e0ae..1ab4e0ba345 100644 --- a/bitbake/lib/bb/server/xmlrpc.py +++ b/bitbake/lib/bb/server/xmlrpc.py @@ -112,6 +112,9 @@ class BitBakeServerCommands(): """ Run a cooker command on the server """ + if 'buildTargets' in command[0]: + bb.event.fire(bb.event.TargetsAcquired(str(command[1])), self.server.readonly) + return self.cooker.command.runCommand(command, self.server.readonly) def getEventHandle(self): diff --git a/bitbake/lib/bb/ui/toasterui.py b/bitbake/lib/bb/ui/toasterui.py index 32b1889a65e..1b0006e53ef 100644 --- a/bitbake/lib/bb/ui/toasterui.py +++ b/bitbake/lib/bb/ui/toasterui.py @@ -100,7 +100,7 @@ _evt_list = [ "bb.runqueue.runQueueExitWait", "bb.event.LogExecTTY", "logging.Lo "bb.event.MultipleProviders", "bb.event.NoProvider", "bb.runqueue.sceneQueueTaskStarted", "bb.runqueue.runQueueTaskStarted", "bb.runqueue.runQueueTaskFailed", "bb.runqueue.sceneQueueTaskFailed", "bb.event.BuildBase", "bb.build.TaskStarted", "bb.build.TaskSucceeded", "bb.build.TaskFailedSilent", - "bb.event.MetadataEvent"] + "bb.event.MetadataEvent","bb.event.TargetsAcquired"] def main(server, eventHandler, params): # set to a logging.FileHandler instance when a build starts; @@ -186,6 +186,10 @@ def main(server, eventHandler, params): # pylint: disable=protected-access # the code will look into the protected variables of the event; no easy way around this + + if isinstance(event, bb.event.TargetsAcquired): + logger.warn("EARLY BUILD TARGET EVENT PRE SANITY TARGET=: %s", event._pkgs) + continue # we treat ParseStarted as the first event of toaster-triggered # builds; that way we get the Build Configuration included in the log # and any errors that occur before BuildStarted is fired |