devstack/lib/quantum_plugins
armando-migliaccio 7c025fedc3 Check quantum status dependent on the plugin
There are Quantum plugins that do not require the use of an agent.
This patch relaxes the constraint in quantum-adv-test.sh by adding
the ability to customize the logic that verifies whether the test
can run or not, depending on the Quantum plugin of your choice.

Fixes bug #1177904

Change-Id: I6e2c17f43d9e1475b2eb175cceb5107a83f9aa74
2013-05-09 09:05:15 -07:00
..
services Add configurable use of veths with Quantum+OVS. 2013-04-30 05:57:25 +00:00
bigswitch_floodlight Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
brocade Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
linuxbridge Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
nec Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
nicira Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
openvswitch Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
ovs_base Support Quantum security group 2013-03-21 18:34:14 +09:00
plumgrid Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
README.md Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00
ryu Check quantum status dependent on the plugin 2013-05-09 09:05:15 -07:00

Quantum plugin specific files

Quantum plugins require plugin specific behavior. The files under the directory, lib/quantum_plugins/, will be used when their service is enabled. Each plugin has lib/quantum_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/quantum calls the following functions when the $Q_PLUGIN is enabled

  • quantum_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"}
  • quantum_plugin_install_agent_packages : install packages that is specific to plugin agent e.g. install_package bridge-utils
  • quantum_plugin_configure_common : set plugin-specific variables, Q_PLUGIN_CONF_PATH, Q_PLUGIN_CONF_FILENAME, Q_DB_NAME, Q_PLUGIN_CLASS
  • quantum_plugin_configure_debug_command
  • quantum_plugin_configure_dhcp_agent
  • quantum_plugin_configure_l3_agent
  • quantum_plugin_configure_plugin_agent
  • quantum_plugin_configure_service
  • quantum_plugin_setup_interface_driver
  • has_quantum_plugin_security_group: return 0 if the plugin support quantum security group otherwise return 1
  • quantum_plugin_check_adv_test_requirements: return 0 if requirements are satisfied otherwise return 1