def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.prom_client = faucet_metrics.FaucetMetrics(reg=self._reg) self.bgp = faucet_bgp.FaucetBgp(self.logger, self.exc_logname, self.prom_client, self._send_flow_msgs) self.dot1x = faucet_dot1x.FaucetDot1x(self.logger, self.exc_logname, self.prom_client, self._send_flow_msgs) self.notifier = faucet_event.FaucetEventNotifier( self.get_setting('EVENT_SOCK'), self.prom_client, self.logger) self.valves_manager = valves_manager.ValvesManager( self.logname, self.logger, self.prom_client, self.notifier, self.bgp, self.dot1x, self.get_setting('CONFIG_AUTO_REVERT'), self._send_flow_msgs) self.thread_managers = (self.bgp, self.dot1x, self.prom_client, self.notifier) self.event_sock_hrtbeat_time = int( self.get_setting('EVENT_SOCK_HEARTBEAT') or 0) if self.event_sock_hrtbeat_time > 0: self._VALVE_SERVICES[EventFaucetEventSockHeartbeat] = ( 'event_sock_heartbeat', self.event_sock_hrtbeat_time) self.stack_root_state_update_time = int( self.get_setting('STACK_ROOT_STATE_UPDATE_TIME') or 0) if self.stack_root_state_update_time: self._VALVE_SERVICES[EventFaucetMaintainStackRoot] = ( None, self.stack_root_state_update_time)
def setup_valve(self, config): """Set up test DP with config.""" self.tmpdir = tempfile.mkdtemp() self.config_file = os.path.join(self.tmpdir, 'valve_unit.yaml') self.faucet_event_sock = os.path.join(self.tmpdir, 'event.sock') self.table = FakeOFTable(self.NUM_TABLES) logfile = os.path.join(self.tmpdir, 'faucet.log') self.logger = valve_util.get_logger(self.LOGNAME, logfile, logging.DEBUG, 0) self.registry = CollectorRegistry() # TODO: verify Prometheus variables self.metrics = faucet_metrics.FaucetMetrics(reg=self.registry) # pylint: disable=unexpected-keyword-arg # TODO: verify events self.notifier = faucet_experimental_event.FaucetExperimentalEventNotifier( self.faucet_event_sock, self.metrics, self.logger) self.bgp = faucet_bgp.FaucetBgp(self.logger, self.metrics, self.send_flows_to_dp_by_id) self.valves_manager = valves_manager.ValvesManager( self.LOGNAME, self.logger, self.metrics, self.notifier, self.bgp, self.send_flows_to_dp_by_id) self.notifier.start() self.update_config(config) self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) self.sock.connect(self.faucet_event_sock) self.connect_dp()
def __init__(self, *args, **kwargs): super(Faucet, self).__init__(*args, **kwargs) self.api = kwargs['faucet_experimental_api'] self.metrics = faucet_metrics.FaucetMetrics() self.notifier = faucet_experimental_event.FaucetExperimentalEventNotifier( self.get_setting('EVENT_SOCK'), self.metrics, self.logger) self.bgp = faucet_bgp.FaucetBgp(self.logger, self.metrics, self._send_flow_msgs) self.valves_manager = valves_manager.ValvesManager( self.logname, self.logger, self.metrics, self.notifier, self.bgp, self._send_flow_msgs)
def __init__(self, *args, **kwargs): super(Faucet, self).__init__(*args, **kwargs) self.api = kwargs['faucet_experimental_api'] self.metrics = faucet_metrics.FaucetMetrics(reg=self._reg) self.bgp = faucet_bgp.FaucetBgp(self.logger, self.exc_logname, self.metrics, self._send_flow_msgs) self.dot1x = faucet_dot1x.FaucetDot1x(self.logger, self.exc_logname, self.metrics, self._send_flow_msgs) self.notifier = faucet_event.FaucetEventNotifier( self.get_setting('EVENT_SOCK'), self.metrics, self.logger) self.valves_manager = valves_manager.ValvesManager( self.logname, self.logger, self.metrics, self.notifier, self.bgp, self.dot1x, self.get_setting('CONFIG_AUTO_REVERT'), self._send_flow_msgs) self.thread_managers = (self.bgp, self.dot1x, self.metrics, self.notifier)
def __init__(self, *args, **kwargs): super(Faucet, self).__init__(*args, **kwargs) self.api = kwargs['faucet_experimental_api'] self.metrics = faucet_metrics.FaucetMetrics(reg=self._reg) self.bgp = faucet_bgp.FaucetBgp( self.logger, self.exc_logname, self.metrics, self._send_flow_msgs) self.dot1x = faucet_dot1x.FaucetDot1x( self.logger, self.exc_logname, self.metrics, self._send_flow_msgs) self.notifier = faucet_event.FaucetEventNotifier( self.get_setting('EVENT_SOCK'), self.metrics, self.logger) self.valves_manager = valves_manager.ValvesManager( self.logname, self.logger, self.metrics, self.notifier, self.bgp, self.dot1x, self.get_setting('CONFIG_AUTO_REVERT'), self._send_flow_msgs) self.thread_managers = (self.bgp, self.dot1x, self.metrics, self.notifier) self.event_sock_hrtbeat_time = int(self.get_setting('EVENT_SOCK_HEARTBEAT') or 0) if self.event_sock_hrtbeat_time > 0: self._VALVE_SERVICES[EventFaucetEventSockHeartbeat] = ('event_sock_heartbeat', self.event_sock_hrtbeat_time)