diff options
Diffstat (limited to 'bitbake/lib/bb/server/xmlrpcserver.py')
-rw-r--r-- | bitbake/lib/bb/server/xmlrpcserver.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/bitbake/lib/bb/server/xmlrpcserver.py b/bitbake/lib/bb/server/xmlrpcserver.py index 2fa71be667..ebc271aca4 100644 --- a/bitbake/lib/bb/server/xmlrpcserver.py +++ b/bitbake/lib/bb/server/xmlrpcserver.py | |||
@@ -11,8 +11,11 @@ import hashlib | |||
11 | import time | 11 | import time |
12 | import inspect | 12 | import inspect |
13 | from xmlrpc.server import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler | 13 | from xmlrpc.server import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler |
14 | import bb.server.xmlrpcclient | ||
14 | 15 | ||
15 | import bb | 16 | import bb |
17 | import bb.cooker | ||
18 | import bb.event | ||
16 | 19 | ||
17 | # This request handler checks if the request has a "Bitbake-token" header | 20 | # This request handler checks if the request has a "Bitbake-token" header |
18 | # field (this comes from the client side) and compares it with its internal | 21 | # field (this comes from the client side) and compares it with its internal |
@@ -53,7 +56,7 @@ class BitBakeXMLRPCServer(SimpleXMLRPCServer): | |||
53 | 56 | ||
54 | def __init__(self, interface, cooker, parent): | 57 | def __init__(self, interface, cooker, parent): |
55 | # Use auto port configuration | 58 | # Use auto port configuration |
56 | if (interface[1] == -1): | 59 | if interface[1] == -1: |
57 | interface = (interface[0], 0) | 60 | interface = (interface[0], 0) |
58 | SimpleXMLRPCServer.__init__(self, interface, | 61 | SimpleXMLRPCServer.__init__(self, interface, |
59 | requestHandler=BitBakeXMLRPCRequestHandler, | 62 | requestHandler=BitBakeXMLRPCRequestHandler, |
@@ -86,11 +89,12 @@ class BitBakeXMLRPCServer(SimpleXMLRPCServer): | |||
86 | def handle_requests(self): | 89 | def handle_requests(self): |
87 | self._handle_request_noblock() | 90 | self._handle_request_noblock() |
88 | 91 | ||
89 | class BitBakeXMLRPCServerCommands(): | 92 | class BitBakeXMLRPCServerCommands: |
90 | 93 | ||
91 | def __init__(self, server): | 94 | def __init__(self, server): |
92 | self.server = server | 95 | self.server = server |
93 | self.has_client = False | 96 | self.has_client = False |
97 | self.event_handle = None | ||
94 | 98 | ||
95 | def registerEventHandler(self, host, port): | 99 | def registerEventHandler(self, host, port): |
96 | """ | 100 | """ |
@@ -99,8 +103,8 @@ class BitBakeXMLRPCServerCommands(): | |||
99 | s, t = bb.server.xmlrpcclient._create_server(host, port) | 103 | s, t = bb.server.xmlrpcclient._create_server(host, port) |
100 | 104 | ||
101 | # we don't allow connections if the cooker is running | 105 | # we don't allow connections if the cooker is running |
102 | if (self.server.cooker.state in [bb.cooker.state.parsing, bb.cooker.state.running]): | 106 | if self.server.cooker.state in [bb.cooker.State.PARSING, bb.cooker.State.RUNNING]: |
103 | return None, "Cooker is busy: %s" % bb.cooker.state.get_name(self.server.cooker.state) | 107 | return None, f"Cooker is busy: {self.server.cooker.state.name}" |
104 | 108 | ||
105 | self.event_handle = bb.event.register_UIHhandler(s, True) | 109 | self.event_handle = bb.event.register_UIHhandler(s, True) |
106 | return self.event_handle, 'OK' | 110 | return self.event_handle, 'OK' |
@@ -117,7 +121,7 @@ class BitBakeXMLRPCServerCommands(): | |||
117 | """ | 121 | """ |
118 | Run a cooker command on the server | 122 | Run a cooker command on the server |
119 | """ | 123 | """ |
120 | return self.server.cooker.command.runCommand(command, self.server.readonly) | 124 | return self.server.cooker.command.runCommand(command, self.server.parent, self.server.readonly) |
121 | 125 | ||
122 | def getEventHandle(self): | 126 | def getEventHandle(self): |
123 | return self.event_handle | 127 | return self.event_handle |