From 41595e74531cf8f88c229b3dbaed296a789b52ff Mon Sep 17 00:00:00 2001 From: Shachar Snapiri Date: Tue, 10 Jul 2018 15:38:02 +0300 Subject: [PATCH] Rename "ovs" occurances to "switch" Any non-ovs specific reference in the code should be renamed to "switch" so when we have modular switch backend, the only place where we will have these names is in the ovs-specific driver. Partial-Bug: #1781376 Change-Id: Ie220a03694ecee5c05e30f36880d8fb7a324b506 --- dragonflow/common/utils.py | 4 ++-- dragonflow/controller/apps/aging.py | 6 +++--- dragonflow/controller/common/constants.py | 4 ++-- dragonflow/controller/df_local_controller.py | 18 ++++++++++-------- dragonflow/controller/ryu_base_app.py | 8 ++++---- dragonflow/controller/topology.py | 1 + dragonflow/ovsdb/vswitch_impl.py | 4 ++-- .../tests/unit/test_df_local_controller.py | 13 +++++++------ 8 files changed, 31 insertions(+), 27 deletions(-) diff --git a/dragonflow/common/utils.py b/dragonflow/common/utils.py index 4291d59cb..04f48fb83 100644 --- a/dragonflow/common/utils.py +++ b/dragonflow/common/utils.py @@ -97,7 +97,7 @@ def is_valid_version(old_obj, new_obj): return False -def load_driver(driver_cfg, namespace): +def load_driver(driver_cfg, namespace, *args, **kwargs): try: # Try to resolve by alias mgr = driver.DriverManager(namespace, driver_cfg) @@ -114,7 +114,7 @@ def load_driver(driver_cfg, namespace): LOG.error("Error loading class by class name", exc_info=True) raise ImportError(_("Class not found.")) - return class_to_load() + return class_to_load(*args, **kwargs) def is_port_owner_of_type(owner_type, type_list): diff --git a/dragonflow/controller/apps/aging.py b/dragonflow/controller/apps/aging.py index f5edd5105..2c41c7330 100644 --- a/dragonflow/controller/apps/aging.py +++ b/dragonflow/controller/apps/aging.py @@ -43,10 +43,10 @@ class AgingApp(df_base_app.DFlowApp): aging -> renew_aging_cookie() -> add canary flows with new cookie - after all apps flushed flows with new cookie, ovs_sync_finished() will + after all apps flushed flows with new cookie, switch_sync_finished() will be called """ - def ovs_sync_started(self): + def switch_sync_started(self): LOG.info("start aging") canary_flow = self._get_canary_flow() if not canary_flow: @@ -68,7 +68,7 @@ class AgingApp(df_base_app.DFlowApp): now all apps had flushed flows with new cookie delete flows with old cookie """ - def ovs_sync_finished(self): + def switch_sync_finished(self): if self.do_aging: # Give apps a few more seconds to finish their magic eventlet.spawn_after(5, self._start_aging) diff --git a/dragonflow/controller/common/constants.py b/dragonflow/controller/common/constants.py index 7e7104c42..c470212ef 100644 --- a/dragonflow/controller/common/constants.py +++ b/dragonflow/controller/common/constants.py @@ -134,6 +134,6 @@ CHASSIS_MAC_PREFIX = '91:92:' CONTROLLER_SYNC = 'sync' CONTROLLER_REINITIALIZE = 'reinitialize' CONTROLLER_DBRESTART = 'dbrestart' -CONTROLLER_OVS_SYNC_STARTED = 'ovs_sync_started' -CONTROLLER_OVS_SYNC_FINISHED = 'ovs_sync_finished' +CONTROLLER_SWITCH_SYNC_STARTED = 'switch_sync_started' +CONTROLLER_SWITCH_SYNC_FINISHED = 'switch_sync_finished' CONTROLLER_LOG = 'log' diff --git a/dragonflow/controller/df_local_controller.py b/dragonflow/controller/df_local_controller.py index 6f6042ff8..6fef3c717 100644 --- a/dragonflow/controller/df_local_controller.py +++ b/dragonflow/controller/df_local_controller.py @@ -236,11 +236,11 @@ class DfLocalController(object): self.nb_api.subscriber.unregister_listen_address(publisher.uri) self.db_store.delete(publisher) - def ovs_sync_finished(self): - self.open_flow_app.notify_ovs_sync_finished() + def switch_sync_finished(self): + self.open_flow_app.notify_switch_sync_finished() - def ovs_sync_started(self): - self.open_flow_app.notify_ovs_sync_started() + def switch_sync_started(self): + self.open_flow_app.notify_switch_sync_started() def _is_newer(self, obj, cached_obj): '''Check wether obj is newer than cached_on. @@ -287,6 +287,8 @@ class DfLocalController(object): def get_chassis_name(self): return self.chassis_name + # TODO(snapiri): We should not have ovs here + # TODO(snapiri): This should be part of the interface def notify_port_status(self, ovs_port, status): if self.neutron_notifier: table_name = l2.LogicalPort.table_name @@ -333,10 +335,10 @@ class DfLocalController(object): self.sync() elif action == ctrl_const.CONTROLLER_DBRESTART: self.nb_api.db_recover_callback() - elif action == ctrl_const.CONTROLLER_OVS_SYNC_FINISHED: - self.ovs_sync_finished() - elif action == ctrl_const.CONTROLLER_OVS_SYNC_STARTED: - self.ovs_sync_started() + elif action == ctrl_const.CONTROLLER_SWITCH_SYNC_FINISHED: + self.switch_sync_finished() + elif action == ctrl_const.CONTROLLER_SWITCH_SYNC_STARTED: + self.switch_sync_started() elif action == ctrl_const.CONTROLLER_LOG: LOG.info('Log event: %s', str(update)) elif update.table is not None: diff --git a/dragonflow/controller/ryu_base_app.py b/dragonflow/controller/ryu_base_app.py index 30ab86b42..138ba9f0f 100644 --- a/dragonflow/controller/ryu_base_app.py +++ b/dragonflow/controller/ryu_base_app.py @@ -92,11 +92,11 @@ class RyuDFAdapter(ofp_handler.OFPHandler): def unregister_table_handler(self, table_id, handler): self.table_handlers.pop(table_id, None) - def notify_ovs_sync_finished(self): - self.dispatcher.dispatch('ovs_sync_finished') + def notify_switch_sync_finished(self): + self.dispatcher.dispatch(constants.CONTROLLER_SWITCH_SYNC_FINISHED) - def notify_ovs_sync_started(self): - self.dispatcher.dispatch('ovs_sync_started') + def notify_switch_sync_started(self): + self.dispatcher.dispatch(constants.CONTROLLER_SWITCH_SYNC_STARTED) @handler.set_ev_handler(ofp_event.EventOFPSwitchFeatures, handler.CONFIG_DISPATCHER) diff --git a/dragonflow/controller/topology.py b/dragonflow/controller/topology.py index b2d5a799b..cf30c1988 100644 --- a/dragonflow/controller/topology.py +++ b/dragonflow/controller/topology.py @@ -49,6 +49,7 @@ class Topology(object): self.chassis_name = controller.get_chassis_name() self.db_store = db_store.get_instance() + # TODO(snapiri) this should not be ovs specific ovs.OvsPort.register_created(self.ovs_port_updated) ovs.OvsPort.register_updated(self.ovs_port_updated) ovs.OvsPort.register_deleted(self.ovs_port_deleted) diff --git a/dragonflow/ovsdb/vswitch_impl.py b/dragonflow/ovsdb/vswitch_impl.py index 8090fcb8a..22378e0bc 100644 --- a/dragonflow/ovsdb/vswitch_impl.py +++ b/dragonflow/ovsdb/vswitch_impl.py @@ -58,14 +58,14 @@ class OvsApi(object): db_connection = ('%s:%s:%s' % (self.protocol, self.ip, self.port)) db_change_callback(None, None, - constants.CONTROLLER_OVS_SYNC_STARTED, None) + constants.CONTROLLER_SWITCH_SYNC_STARTED, None) self.ovsdb = impl_idl.DFOvsdbApi( db_connection, self.vsctl_timeout, db_change_callback) db_change_callback(None, None, - constants.CONTROLLER_OVS_SYNC_FINISHED, None) + constants.CONTROLLER_SWITCH_SYNC_FINISHED, None) def _db_get_val(self, table, record, column, check_error=False, log_errors=True): diff --git a/dragonflow/tests/unit/test_df_local_controller.py b/dragonflow/tests/unit/test_df_local_controller.py index f8fc43a12..17d0d01cf 100644 --- a/dragonflow/tests/unit/test_df_local_controller.py +++ b/dragonflow/tests/unit/test_df_local_controller.py @@ -38,14 +38,15 @@ class DfLocalControllerTestCase(test_app_base.DFAppTestBase): apps_list = ["l2"] - @mock.patch.object(ryu_base_app.RyuDFAdapter, 'notify_ovs_sync_finished') - def test_ovs_sync_finished(self, mock_notify): - self.controller.ovs_sync_finished() + @mock.patch.object(ryu_base_app.RyuDFAdapter, + 'notify_switch_sync_finished') + def test_switch_sync_finished(self, mock_notify): + self.controller.switch_sync_finished() mock_notify.assert_called_once() - @mock.patch.object(ryu_base_app.RyuDFAdapter, 'notify_ovs_sync_started') - def test_ovs_sync_started(self, mock_notify): - self.controller.ovs_sync_started() + @mock.patch.object(ryu_base_app.RyuDFAdapter, 'notify_switch_sync_started') + def test_switch_sync_started(self, mock_notify): + self.controller.switch_sync_started() mock_notify.assert_called_once() @mock.patch.object(df_local_controller.DfLocalController,