NB DB entry point definition
This patch defines an entry point in setup.cfg for the NB DB class definition Change-Id: Icd773943a2671db0bbf1f4623ab2e8772a879cb3
This commit is contained in:
parent
5c276487ef
commit
29ccc56a00
@ -16,10 +16,10 @@ import sys
|
|||||||
from neutron.common import config as common_config
|
from neutron.common import config as common_config
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_serialization import jsonutils
|
from oslo_serialization import jsonutils
|
||||||
from oslo_utils import importutils
|
|
||||||
|
|
||||||
from dragonflow.common import common_params
|
from dragonflow.common import common_params
|
||||||
from dragonflow.common import exceptions as df_exceptions
|
from dragonflow.common import exceptions as df_exceptions
|
||||||
|
from dragonflow.common import utils as df_utils
|
||||||
|
|
||||||
cfg.CONF.register_opts(common_params.df_opts, 'df')
|
cfg.CONF.register_opts(common_params.df_opts, 'df')
|
||||||
|
|
||||||
@ -134,8 +134,9 @@ def main():
|
|||||||
return
|
return
|
||||||
|
|
||||||
common_config.init(['--config-file', '/etc/neutron/neutron.conf'])
|
common_config.init(['--config-file', '/etc/neutron/neutron.conf'])
|
||||||
db_driver_class = importutils.import_class(cfg.CONF.df.nb_db_class)
|
db_driver = df_utils.load_driver(
|
||||||
db_driver = db_driver_class()
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
db_driver.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
db_driver.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
||||||
db_port=cfg.CONF.df.remote_db_port,
|
db_port=cfg.CONF.df.remote_db_port,
|
||||||
config=cfg.CONF.df)
|
config=cfg.CONF.df)
|
||||||
|
@ -27,6 +27,7 @@ from stevedore import driver
|
|||||||
from dragonflow._i18n import _, _LE
|
from dragonflow._i18n import _, _LE
|
||||||
|
|
||||||
DF_PUBSUB_DRIVER_NAMESPACE = 'dragonflow.pubsub_driver'
|
DF_PUBSUB_DRIVER_NAMESPACE = 'dragonflow.pubsub_driver'
|
||||||
|
DF_NB_DB_DRIVER_NAMESPACE = 'dragonflow.nb_db_driver'
|
||||||
LOG = logging.getLogger(__name__)
|
LOG = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,12 +21,12 @@ from neutron.agent.common import config
|
|||||||
from neutron.common import config as common_config
|
from neutron.common import config as common_config
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log
|
from oslo_log import log
|
||||||
from oslo_utils import importutils
|
|
||||||
from ryu.base.app_manager import AppManager
|
from ryu.base.app_manager import AppManager
|
||||||
|
|
||||||
from dragonflow._i18n import _LI, _LW
|
from dragonflow._i18n import _LI, _LW
|
||||||
from dragonflow.common import common_params
|
from dragonflow.common import common_params
|
||||||
from dragonflow.common import constants
|
from dragonflow.common import constants
|
||||||
|
from dragonflow.common import utils as df_utils
|
||||||
from dragonflow.controller.ryu_base_app import RyuDFAdapter
|
from dragonflow.controller.ryu_base_app import RyuDFAdapter
|
||||||
from dragonflow.controller.topology import Topology
|
from dragonflow.controller.topology import Topology
|
||||||
from dragonflow.db import api_nb
|
from dragonflow.db import api_nb
|
||||||
@ -49,9 +49,11 @@ class DfLocalController(object):
|
|||||||
self.ip = cfg.CONF.df.local_ip
|
self.ip = cfg.CONF.df.local_ip
|
||||||
self.tunnel_type = cfg.CONF.df.tunnel_type
|
self.tunnel_type = cfg.CONF.df.tunnel_type
|
||||||
self.sync_finished = False
|
self.sync_finished = False
|
||||||
nb_driver_class = importutils.import_class(cfg.CONF.df.nb_db_class)
|
nb_driver = df_utils.load_driver(
|
||||||
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
self.nb_api = api_nb.NbApi(
|
self.nb_api = api_nb.NbApi(
|
||||||
nb_driver_class(),
|
nb_driver,
|
||||||
use_pubsub=cfg.CONF.df.enable_df_pub_sub)
|
use_pubsub=cfg.CONF.df.enable_df_pub_sub)
|
||||||
self.vswitch_api = ovsdb_vswitch_impl.OvsdbSwitchApi(
|
self.vswitch_api = ovsdb_vswitch_impl.OvsdbSwitchApi(
|
||||||
self.ip, self.nb_api)
|
self.ip, self.nb_api)
|
||||||
|
@ -21,7 +21,6 @@ from neutron.common import config as common_config
|
|||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log as logging
|
from oslo_log import log as logging
|
||||||
from oslo_serialization import jsonutils
|
from oslo_serialization import jsonutils
|
||||||
from oslo_utils import importutils
|
|
||||||
|
|
||||||
from dragonflow._i18n import _LW
|
from dragonflow._i18n import _LW
|
||||||
from dragonflow.common import common_params
|
from dragonflow.common import common_params
|
||||||
@ -39,8 +38,9 @@ class PublisherService(object):
|
|||||||
self._queue = Queue()
|
self._queue = Queue()
|
||||||
self.publisher = self._get_publisher()
|
self.publisher = self._get_publisher()
|
||||||
self.multiproc_subscriber = self._get_multiproc_subscriber()
|
self.multiproc_subscriber = self._get_multiproc_subscriber()
|
||||||
nb_driver_class = importutils.import_class(cfg.CONF.df.nb_db_class)
|
self.db = df_utils.load_driver(
|
||||||
self.db = nb_driver_class()
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
self.uuid = pub_sub_api.generate_publisher_uuid()
|
self.uuid = pub_sub_api.generate_publisher_uuid()
|
||||||
self._rate_limit = df_utils.RateLimiter(
|
self._rate_limit = df_utils.RateLimiter(
|
||||||
cfg.CONF.df.publisher_rate_limit_count,
|
cfg.CONF.df.publisher_rate_limit_count,
|
||||||
|
@ -24,13 +24,13 @@ from neutron.plugins.ml2 import models
|
|||||||
from neutron_lib import constants as n_const
|
from neutron_lib import constants as n_const
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log
|
from oslo_log import log
|
||||||
from oslo_utils import importutils
|
|
||||||
|
|
||||||
from dragonflow._i18n import _LI
|
from dragonflow._i18n import _LI
|
||||||
from dragonflow.common import common_params
|
from dragonflow.common import common_params
|
||||||
from dragonflow.common import constants as df_common_const
|
from dragonflow.common import constants as df_common_const
|
||||||
from dragonflow.common import exceptions as df_exceptions
|
from dragonflow.common import exceptions as df_exceptions
|
||||||
from dragonflow.common import extensions
|
from dragonflow.common import extensions
|
||||||
|
from dragonflow.common import utils as df_utils
|
||||||
from dragonflow.db import api_nb
|
from dragonflow.db import api_nb
|
||||||
from dragonflow.db.neutron import lockedobjects_db as lock_db
|
from dragonflow.db.neutron import lockedobjects_db as lock_db
|
||||||
from dragonflow.db.neutron import versionobjects_db as version_db
|
from dragonflow.db.neutron import versionobjects_db as version_db
|
||||||
@ -57,9 +57,11 @@ class DFMechDriver(driver_api.MechanismDriver):
|
|||||||
self.vif_type = portbindings.VIF_TYPE_OVS
|
self.vif_type = portbindings.VIF_TYPE_OVS
|
||||||
self._set_base_port_binding()
|
self._set_base_port_binding()
|
||||||
|
|
||||||
nb_driver_class = importutils.import_class(cfg.CONF.df.nb_db_class)
|
nb_driver = df_utils.load_driver(
|
||||||
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
self.nb_api = api_nb.NbApi(
|
self.nb_api = api_nb.NbApi(
|
||||||
nb_driver_class(),
|
nb_driver,
|
||||||
use_pubsub=cfg.CONF.df.enable_df_pub_sub,
|
use_pubsub=cfg.CONF.df.enable_df_pub_sub,
|
||||||
is_neutron_server=True)
|
is_neutron_server=True)
|
||||||
self.nb_api.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
self.nb_api.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
||||||
|
@ -60,6 +60,7 @@ from dragonflow.common import common_params
|
|||||||
from dragonflow.common import constants as df_common_const
|
from dragonflow.common import constants as df_common_const
|
||||||
from dragonflow.common import exceptions as df_exceptions
|
from dragonflow.common import exceptions as df_exceptions
|
||||||
from dragonflow.common import extensions
|
from dragonflow.common import extensions
|
||||||
|
from dragonflow.common import utils as df_utils
|
||||||
from dragonflow.db import api_nb
|
from dragonflow.db import api_nb
|
||||||
from dragonflow.db.neutron import lockedobjects_db as lock_db
|
from dragonflow.db.neutron import lockedobjects_db as lock_db
|
||||||
from dragonflow.db.neutron import versionobjects_db as version_db
|
from dragonflow.db.neutron import versionobjects_db as version_db
|
||||||
@ -130,10 +131,12 @@ class DFPlugin(db_base_plugin_v2.NeutronDbPluginV2,
|
|||||||
self._start_rpc_notifiers()
|
self._start_rpc_notifiers()
|
||||||
|
|
||||||
def post_fork_initialize(self, resource, event, trigger, **kwargs):
|
def post_fork_initialize(self, resource, event, trigger, **kwargs):
|
||||||
nb_driver_class = importutils.import_class(cfg.CONF.df.nb_db_class)
|
nb_driver = df_utils.load_driver(
|
||||||
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
|
|
||||||
self.nb_api = api_nb.NbApi(
|
self.nb_api = api_nb.NbApi(
|
||||||
nb_driver_class(),
|
nb_driver,
|
||||||
use_pubsub=cfg.CONF.df.enable_df_pub_sub,
|
use_pubsub=cfg.CONF.df.enable_df_pub_sub,
|
||||||
is_neutron_server=True)
|
is_neutron_server=True)
|
||||||
self.nb_api.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
self.nb_api.initialize(db_ip=cfg.CONF.df.remote_db_ip,
|
||||||
|
@ -15,9 +15,9 @@ from neutron.common import config as common_config
|
|||||||
from neutronclient.neutron import client
|
from neutronclient.neutron import client
|
||||||
import os_client_config
|
import os_client_config
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_utils import importutils
|
|
||||||
|
|
||||||
from dragonflow.common import common_params
|
from dragonflow.common import common_params
|
||||||
|
from dragonflow.common import utils as df_utils
|
||||||
from dragonflow.db import api_nb
|
from dragonflow.db import api_nb
|
||||||
from dragonflow.tests import base
|
from dragonflow.tests import base
|
||||||
from dragonflow.tests.common import app_testing_objects as test_objects
|
from dragonflow.tests.common import app_testing_objects as test_objects
|
||||||
@ -50,8 +50,10 @@ class DFTestBase(base.BaseTestCase):
|
|||||||
self.conf = cfg.CONF.df
|
self.conf = cfg.CONF.df
|
||||||
self.integration_bridge = self.conf.integration_bridge
|
self.integration_bridge = self.conf.integration_bridge
|
||||||
|
|
||||||
db_driver_class = importutils.import_class(self.conf.nb_db_class)
|
db_driver = df_utils.load_driver(
|
||||||
self.nb_api = api_nb.NbApi(db_driver_class())
|
cfg.CONF.df.nb_db_class,
|
||||||
|
df_utils.DF_NB_DB_DRIVER_NAMESPACE)
|
||||||
|
self.nb_api = api_nb.NbApi(db_driver)
|
||||||
self.nb_api.initialize(db_ip=self.conf.remote_db_ip,
|
self.nb_api.initialize(db_ip=self.conf.remote_db_ip,
|
||||||
db_port=self.conf.remote_db_port)
|
db_port=self.conf.remote_db_port)
|
||||||
self.local_ip = self.conf.local_ip
|
self.local_ip = self.conf.local_ip
|
||||||
|
@ -57,5 +57,10 @@ dragonflow.pubsub_driver =
|
|||||||
zmq_pubsub_driver = dragonflow.db.pubsub_drivers.zmq_pubsub_driver:ZMQPubSub
|
zmq_pubsub_driver = dragonflow.db.pubsub_drivers.zmq_pubsub_driver:ZMQPubSub
|
||||||
zmq_pubsub_multiproc_driver = dragonflow.db.pubsub_drivers.zmq_pubsub_driver:ZMQPubSubMultiproc
|
zmq_pubsub_multiproc_driver = dragonflow.db.pubsub_drivers.zmq_pubsub_driver:ZMQPubSubMultiproc
|
||||||
redis_db_pubsub_driver = dragonflow.db.pubsub_drivers.redis_db_pubsub_driver:RedisPubSub
|
redis_db_pubsub_driver = dragonflow.db.pubsub_drivers.redis_db_pubsub_driver:RedisPubSub
|
||||||
|
dragonflow.nb_db_driver =
|
||||||
|
etcd_nb_db_driver = dragonflow.db.drivers.etcd_db_driver:EtcdDbDriver
|
||||||
|
ramcloud_nb_db_driver = dragonflow.db.drivers.ramcloud_db_driver:RamCloudDbDriver
|
||||||
|
zookeeper_nb_db_driver = dragonflow.db.drivers.zookeeper_db_driver:ZookeeperDbDriver
|
||||||
|
redis_nb_db_driver = dragonflow.db.drivers.redis_db_driver:RedisDbDriver
|
||||||
neutron.service_plugins =
|
neutron.service_plugins =
|
||||||
df-l3 = dragonflow.neutron.services.l3_router_plugin:DFL3RouterPlugin
|
df-l3 = dragonflow.neutron.services.l3_router_plugin:DFL3RouterPlugin
|
||||||
|
Loading…
Reference in New Issue
Block a user