Beispiel #1
0
 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)
Beispiel #2
0
 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()
Beispiel #3
0
 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)
Beispiel #4
0
 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)
Beispiel #5
0
 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)