aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjoshua Watt <JPEWhacker@gmail.com>2024-05-02 08:18:30 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-05-02 16:07:18 +0100
commit8f90d10f9efc9a32e13f6bd031992aece79fe7cc (patch)
tree1ef4f8c0c7da2f262cf3d1f8048432b3617376da
parentc86466d51e8ff14e57a734c1eec5bb651fdc73ef (diff)
downloadbitbake-contrib-stable/2.8-nut.tar.gz
cooker: Use hash client to ping upstream serverstable/2.8-nutstable/2.8-next
The cooker attempts to connect to the upstream hash equivalent server to warn the user early if it is misconfigured. However, this was making the assumption that it was a raw TCP connection and failed when attempting to use a websocket upstream server. Fix this by creating an hash client and using the ping API to check the server instead of using a raw socket. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index c5bfef55d..25b614f1e 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -315,11 +315,10 @@ class BBCooker:
dbfile = (self.data.getVar("PERSISTENT_DIR") or self.data.getVar("CACHE")) + "/hashserv.db"
upstream = self.data.getVar("BB_HASHSERVE_UPSTREAM") or None
if upstream:
- import socket
try:
- sock = socket.create_connection(upstream.split(":"), 5)
- sock.close()
- except socket.error as e:
+ with hashserv.create_client(upstream) as client:
+ client.ping()
+ except ConnectionError as e:
bb.warn("BB_HASHSERVE_UPSTREAM is not valid, unable to connect hash equivalence server at '%s': %s"
% (upstream, repr(e)))