Commit 5e09552f authored by Thibault VINCENT's avatar Thibault VINCENT
Browse files

add: *fixme* accept role 'host' from server

parent e64a5809
Loading
Loading
Loading
Loading
+19 −7
Original line number Diff line number Diff line
@@ -19,8 +19,10 @@ class CCNode(object):
        self._scheduler_timer = None
        self._scheduler_mutex = Lock()
        self._scheduler_stopped = Event()
        self._handler = handlers.NodeHandler(self, hypervisor, exec_cmd,
                                                                    force_xen)
        self._is_hv = hypervisor # hugly
        self._is_xen = force_xen # hugly
        self._exec_cmd = exec_cmd # hugly
        self._handler = None
        self._manager = SimpleRpcClient.from_addr(server, port, enable_ssl=True,
                                                default_handler=self._handler)
        self._server = ConnectionProxy(self._manager)
@@ -51,11 +53,21 @@ class CCNode(object):
        except Exception as err:
            logging.debug('Unhandled exception: `%s`' % err)
        else:
            if role != 'hv':
            if role == 'hv':
                self._handler = handlers.NodeHandler(self,
                                                     self._is_hv,
                                                     self._exec_cmd,
                                                     self._is_xen)
            elif role == 'host':
                self._handler = handlers.NodeHandler(self,
                                                     False,
                                                     self._exec_cmd,
                                                     self._is_xen)
            else:
                logging.warning('Bad role affected by server: %s' % role)
                raise Exception()
                # FIXME this will not cause a server restart, node stays dead
            else:
            
            self._manager.all_connections().pop().set_handler(self._handler)
            self._scheduler_rearm()
            return True