diff mbox series

[scarthgap,2.8,1/1] cooker: Handle ImportError for websockets

Message ID 93190565fd1251e8f47d9a6291739f8b8ed5ec87.1716212099.git.steve@sakoman.com
State New
Headers show
Series [scarthgap,2.8,1/1] cooker: Handle ImportError for websockets | expand

Commit Message

Steve Sakoman May 20, 2024, 1:38 p.m. UTC
From: joshua Watt <JPEWhacker@gmail.com>

Handles ImportError when creating a hash equivalence to ping the server.
This notifies user earlier with a more precise error if websockets can't
be used, and also prevents passing a known bad upstream value to the
local server

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit aa80b3cfc5d16dfba13ca7fb9b78bae179ce3b74)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 lib/bb/cooker.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 25b614f1e..939a99997 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -318,9 +318,10 @@  class BBCooker:
                     try:
                         with hashserv.create_client(upstream) as client:
                             client.ping()
-                    except ConnectionError as e:
+                    except (ConnectionError, ImportError) as e:
                         bb.warn("BB_HASHSERVE_UPSTREAM is not valid, unable to connect hash equivalence server at '%s': %s"
                                  % (upstream, repr(e)))
+                        upstream = None
 
                 self.hashservaddr = "unix://%s/hashserve.sock" % self.data.getVar("TOPDIR")
                 self.hashserv = hashserv.create_server(