]> git.ipfire.org Git - pbs.git/commitdiff
builders: Hash builders by hostname for their stats connections
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 6 Feb 2025 21:24:39 +0000 (21:24 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 6 Feb 2025 21:24:39 +0000 (21:24 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/buildservice/builders.py

index 12da7d09632297c1ee39d4f50269b292c4fe5590..54aedb229628ef1aee0f5a0f05714b87623a63b1 100644 (file)
@@ -409,28 +409,24 @@ class BuildersStats(base.Object):
 
        def join(self, builder, connection):
                try:
-                       self.builders[builder].append(connection)
+                       self.builders[builder.name].append(connection)
                except KeyError:
-                       self.builders[builder] = [connection]
+                       self.builders[builder.name] = [connection]
 
        def leave(self, connection):
                # Find and remove the connection
-               for builder in self.builders.copy():
+               for name in self.builders.copy():
                        try:
-                               self.builders[builder].remove(connection)
+                               self.builders[name].remove(connection)
                        except ValueError:
                                continue
 
-                       # Remove the builder if it has no connections left
-                       if not self.builders[builder]:
-                               del self.builders[builder]
-
        async def submit_stats(self, builder, stats):
                """
                        Called when a builder sends new stats
                """
                try:
-                       connections = self.builders[builder]
+                       connections = self.builders[builder.name]
                except KeyError:
                        return