devstack/lib/neutron_plugins
armando-migliaccio c2dc95add6 Avoid flushing br-ex during stacking
This operation seems vestigial, as it was added to the code when stack.sh
did not have a robust cleanup procedure. These days, unstack.sh does destroy
all bridges, therefore during subsequent stack.sh runs (or even initially, from
a clean environment), the flush operation has become superfluous.

Its removal has also been deemeded necessary to enable certain multi-node
cloud deployments, like the one available in OpenStack infra [1].

[1] https://review.openstack.org/#/c/158525/

Change-Id: I6b4e5b82958e6d29dd450f1c4c9513f6a9e5053a
2015-04-09 23:00:20 -07:00
..
services Revert change to remove lbaas from devstack; it breaks grenade. 2015-03-03 10:31:30 -07:00
bigswitch_floodlight add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
brocade add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
cisco Create initial network when using Cisco N1k plugin 2015-01-16 17:35:27 +00:00
embrane add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
ibm add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
linuxbridge_agent Remove deprecated vars 2015-02-11 10:56:47 -06:00
midonet Improve MidoNet integration 2015-02-25 08:40:44 +00:00
ml2 add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
nec neutron-nec: Vendor code split 2015-03-08 18:27:14 +09:00
nuage add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
ofagent_agent ofagent: Vendor code split 2015-02-13 10:00:26 +09:00
oneconvergence add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
openvswitch add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
openvswitch_agent Remove deprecated vars 2015-02-11 10:56:47 -06:00
ovs_base Avoid flushing br-ex during stacking 2015-04-09 23:00:20 -07:00
plumgrid add shebang lines to all lib files 2014-12-10 11:28:05 -05:00
README.md Rename lib/neutron to lib/neutron-legacy 2015-03-25 22:22:11 -04:00
vmware_nsx vmware-nsx: Vendor code split 2015-03-03 02:04:29 -08:00
vmware_nsx_v vmware-nsx: Vendor code split 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-legacy 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