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.
$Q_PLUGIN$Q_PLUGIN. Plugin specific configuration variables should be in this file.lib/neutron-legacy calls the following functions when the $Q_PLUGIN is enabled
neutron_plugin_create_nova_conf : optionally set options in nova_confneutron_plugin_install_agent_packages : install packages that is specific to plugin agent e.g. install_package bridge-utilsneutron_plugin_configure_common : set plugin-specific variables, Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_PLUGIN_CLASSneutron_plugin_configure_dhcp_agentneutron_plugin_configure_l3_agentneutron_plugin_configure_plugin_agentneutron_plugin_configure_serviceneutron_plugin_setup_interface_driverhas_neutron_plugin_security_group: return 0 if the plugin support neutron security group otherwise return 1neutron_plugin_check_adv_test_requirements: return 0 if requirements are satisfied otherwise return 1