devstack/lib/neutron_plugins
Slawek Kaplonski b1a89eb80b Configure access to physical network also with ML2/OVN backend
Neutron L3 module in Devstack has way to conigure access to physical
network on the node. It can put physical interface to the physical
bridge or, in case when such physical device isn't set, it creates
NAT rule in iptables.

There was missing the same operation for ML2/OVN backend as L3 agent is
not used there at all.

This patch adds the same to be done in both L3 agent and ovn_agent
modules.

Closes-Bug: #1939627
Change-Id: I9e558d1d5d3edbce9e7a025ba3c11267f1579820
2021-08-31 12:41:47 +00:00
..
2018-09-20 10:47:16 +08:00
2015-11-27 15:36:04 +11:00
2015-11-27 15:36:04 +11:00

Neutron plugin specific files

Neutron plugins require plugin specific behavior. The files under the directory, lib/neutron_plugins/, will be used when their service is enabled. Each plugin has lib/neutron_plugins/$Q_PLUGIN and define the following functions. Plugin specific configuration variables should be in this file.

  • filename: $Q_PLUGIN
    • The corresponding file name MUST be the same to plugin name $Q_PLUGIN. Plugin specific configuration variables should be in this file.

functions

lib/neutron-legacy calls the following functions when the $Q_PLUGIN is enabled

  • neutron_plugin_create_nova_conf : optionally set options in nova_conf
  • neutron_plugin_install_agent_packages : install packages that is specific to plugin agent e.g. install_package bridge-utils
  • neutron_plugin_configure_common : set plugin-specific variables, Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_PLUGIN_CLASS
  • neutron_plugin_configure_dhcp_agent
  • neutron_plugin_configure_l3_agent
  • neutron_plugin_configure_plugin_agent
  • neutron_plugin_configure_service
  • neutron_plugin_setup_interface_driver
  • has_neutron_plugin_security_group: return 0 if the plugin support neutron security group otherwise return 1
  • neutron_plugin_check_adv_test_requirements: return 0 if requirements are satisfied otherwise return 1