devstack/lib/quantum_plugins
Akihiro MOTOKI 3452f8eb86 Support Quantum security group
Adds Q_USE_SECGROUP flag for quantum security group

- Added has_quantum_plugin_security_group method for each plugin.
- Set NOVA_VIF_DRIVER to the hybrid VIF driver for plugins with
  iptables based security group support.
- Specifying device_owner type on debug port in lib/quantum and
  quantum-adv-test.sh. This change makes apply quantum security
  group fro debug port

Change-Id: Ifd155798912247d85a9765ef73a2186b929237b4
2013-03-21 18:34:14 +09:00
..
agent_loadbalancer Make openSUSE port up-to-date 2013-03-12 18:02:55 +01:00
bigswitch_floodlight Support Quantum security group 2013-03-21 18:34:14 +09:00
brocade Support Quantum security group 2013-03-21 18:34:14 +09:00
linuxbridge Support Quantum security group 2013-03-21 18:34:14 +09:00
nicira Support Quantum security group 2013-03-21 18:34:14 +09:00
openvswitch Support Quantum security group 2013-03-21 18:34:14 +09:00
ovs_base Support Quantum security group 2013-03-21 18:34:14 +09:00
plumgrid Quantum PLUMgrid Plugin Support 2013-03-03 18:53:28 +00:00
README.md Support Quantum security group 2013-03-21 18:34:14 +09:00
ryu Support Quantum security group 2013-03-21 18:34:14 +09: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