devstack/lib/neutron_plugins
Akihiro Motoki a3c103be7d neutron-nec: Vendor code split
Neutron NEC plugin support is configured using DevStack external
plugin mechanism. The following needs to be added in local.conf:

Q_PLUGIN=nec
enable_plugin networking-nec https://git.openstack.org/stackforge/networking-nec

Also removes lib/neutron_thirdparty/trema and files/debs/trema.
DevStack external plugin for Trema Sliceable Switch is available
and the following is needed to enable it in DevStack.

enable_plugin trema-devstack-plugin https://github.com/nec-openstack/trema-devstack-plugin

Change-Id: If983b986355fcc0118b6e0446b3b295f23b3c40e
2015-03-08 18:27:14 +09:00
..
2014-12-10 11:28:05 -05:00
2014-12-10 11:28:05 -05:00
ibm
2014-12-10 11:28:05 -05:00
2015-02-11 10:56:47 -06:00
2015-02-25 08:40:44 +00:00
ml2
2014-12-10 11:28:05 -05:00
nec
2015-03-08 18:27:14 +09:00
2014-12-10 11:28:05 -05:00
2015-02-13 10:00:26 +09:00
2014-12-10 11:28:05 -05:00
2015-02-11 10:56:47 -06:00
2014-12-10 11:28:05 -05:00
2015-03-03 02:04:29 -08:00
2015-03-03 02:04:29 -08: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 calls the following functions when the $Q_PLUGIN is enabled

  • neutron_plugin_create_nova_conf : set NOVA_VIF_DRIVER and optionally set options in nova_conf e.g. NOVA_VIF_DRIVER=${NOVA_VIF_DRIVER:-"nova.virt.libvirt.vif.LibvirtGenericVIFDriver"}
  • 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_debug_command
  • 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