def setUp(self): self.tmpdir = tempfile.mkdtemp() self.config_file = os.path.join(self.tmpdir, 'valve_unit.yaml') self.table = FakeOFTable(self.NUM_TABLES) dp = self.update_config(self.CONFIG) self.valve = valve_factory(dp)(dp, 'test_valve') # establish connection to datapath ofmsgs = self.valve.datapath_connect(self.DP_ID, range(1, self.NUM_PORTS + 1)) self.table.apply_ofmsgs(ofmsgs) # learn some mac addresses self.rcv_packet(1, 0x100, { 'eth_src': self.P1_V100_MAC, 'eth_dst': self.UNKNOWN_MAC }) self.rcv_packet(2, 0x200, { 'eth_src': self.P2_V200_MAC, 'eth_dst': self.P3_V200_MAC, 'vid': 0x200 }) self.rcv_packet(3, 0x200, { 'eth_src': self.P3_V200_MAC, 'eth_dst': self.P2_V200_MAC, 'vid': 0x200 })
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 setup_valve(self, config): self.tmpdir = tempfile.mkdtemp() self.config_file = os.path.join(self.tmpdir, 'valve_unit.yaml') self.table = FakeOFTable(self.NUM_TABLES) self.faucet_event_sock = None self.logger = None self.metrics = None self.notifier = faucet_experimental_event.FaucetExperimentalEventNotifier( self.faucet_event_sock, self.metrics, self.logger) dp = self.update_config(config) self.valve = valve_factory(dp)(dp, 'test_valve', self.notifier)
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.logfile = os.path.join(self.tmpdir, 'faucet.log') self.table = FakeOFTable(self.NUM_TABLES) self.logger = valve_util.get_logger('faucet', self.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.notifier.start() dp = self.update_config(config, self.DP) self.valve = valve_factory(dp)(dp, 'test_valve', self.notifier) self.valve.update_config_metrics(self.metrics) self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) self.sock.connect(self.faucet_event_sock)
def setup_valve(self, config): self.tmpdir = tempfile.mkdtemp() self.config_file = os.path.join(self.tmpdir, 'valve_unit.yaml') self.table = FakeOFTable(self.NUM_TABLES) dp = self.update_config(config) self.valve = valve_factory(dp)(dp, 'test_valve')