Brian Haley c6cee92073 Spawn long-running processes in the driver agent
The OVN Octavia provider driver in the OvnProviderHelper
class caches these attributes:

    ovn_nbdb_api_for_events
    ovn_nb_idl_for_events
    ovn_nbdb_api

to not re-create things each time OVN IDL that is used for
handling events is called.

We should be using the Octavia Driver Provider Agent framework
instead to not have those long-running IDLs in the API process.

This change:
- Creates driver provider agent and registers its entry point
- While setting up the driver agent instance, start IDL that
  will handle events
- Stop caching ovn_nbdb_api, ovn_nb_idl_for_events and
  ovn_nbdb_api_for_events in the OvnProviderHelper class

Change-Id: I0034a48997bd6b95e1b51bfcbd56e8372b35e62f
Closes-bug: #1871355
2020-04-23 11:03:36 -04:00

38 lines
1.0 KiB
INI

[metadata]
name = ovn-octavia-provider
summary = OpenStack Octavia integration with OVN
description-file =
README.rst
author = OpenStack
author-email = openstack-discuss@lists.openstack.org
home-page = https://docs.openstack.org/ovn-octavia-provider/latest/
python-requires = >=3.6
classifier =
Environment :: OpenStack
Intended Audience :: Information Technology
Intended Audience :: System Administrators
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
[files]
packages =
ovn_octavia_provider
[global]
setup-hooks =
pbr.hooks.setup_hook
[entry_points]
octavia.api.drivers =
ovn = ovn_octavia_provider.driver:OvnProviderDriver
octavia.driver_agent.provider_agents =
ovn = ovn_octavia_provider.agent:OvnProviderAgent
oslo.config.opts =
octavia.api.drivers.ovn = ovn_octavia_provider.common.config:list_opts