[dunfell,1.46,2/2] tinfoil: Allow run_command not to wait on events

Message ID 439be20cb3c08a8c668f618e7eb582c194152dba.1648399312.git.steve@sakoman.com
State Accepted, archived
Commit 41bf1fa85a540232dcf92fe473c3b3c4cd7259dd
Headers show
Series [dunfell,1.46,1/2] server/process: Note when commands complete in logs | expand

Commit Message

Steve Sakoman March 27, 2022, 4:44 p.m. UTC
From: Richard Purdie <richard.purdie@linuxfoundation.org>

There are some commands where we want to see the events returned so allow
the caller to request this. This also allows us to fix an infamous bug in
the tinfoil testsuite in OE-Core.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0e8421c41d97d5d50a553d70c8f775d521f1a199)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 lib/bb/tinfoil.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Patch

diff --git a/lib/bb/tinfoil.py b/lib/bb/tinfoil.py
index ae690389..28f1e562 100644
--- a/lib/bb/tinfoil.py
+++ b/lib/bb/tinfoil.py
@@ -448,7 +448,7 @@  class Tinfoil:
         self.run_actions(config_params)
         self.recipes_parsed = True
 
-    def run_command(self, command, *params):
+    def run_command(self, command, *params, handle_events=True):
         """
         Run a command on the server (as implemented in bb.command).
         Note that there are two types of command - synchronous and
@@ -468,7 +468,7 @@  class Tinfoil:
         try:
             result = self.server_connection.connection.runCommand(commandline)
         finally:
-            while True:
+            while handle_events:
                 event = self.wait_event()
                 if not event:
                     break