blob: 586ded79b4235ab63069a39d8577ed8048b12415 [file] [log] [blame]
Sean Daguee263c822014-12-05 14:25:28 -05001#!/bin/bash
2#
Mark McClainb05c8762013-07-06 23:29:39 -04003# Neuton Big Switch/FloodLight plugin
4# ------------------------------------
5
6# Save trace setting
Ian Wienand523f4882015-10-13 11:03:03 +11007_XTRACE_NEUTRON_BIGSWITCH=$(set +o | grep xtrace)
Mark McClainb05c8762013-07-06 23:29:39 -04008set +o xtrace
9
10source $TOP_DIR/lib/neutron_plugins/ovs_base
11source $TOP_DIR/lib/neutron_thirdparty/bigswitch_floodlight # for third party service specific configuration values
12
Ian Wienandaee18c72014-02-21 15:35:08 +110013function neutron_plugin_create_nova_conf {
Aaron Rosen4540d002013-10-24 13:59:33 -070014 :
Mark McClainb05c8762013-07-06 23:29:39 -040015}
16
Ian Wienandaee18c72014-02-21 15:35:08 +110017function neutron_plugin_install_agent_packages {
Mark McClainb05c8762013-07-06 23:29:39 -040018 _neutron_ovs_base_install_agent_packages
19}
20
Ian Wienandaee18c72014-02-21 15:35:08 +110021function neutron_plugin_configure_common {
Mark McClainb05c8762013-07-06 23:29:39 -040022 Q_PLUGIN_CONF_PATH=etc/neutron/plugins/bigswitch
23 Q_PLUGIN_CONF_FILENAME=restproxy.ini
Mark McClainb05c8762013-07-06 23:29:39 -040024 Q_PLUGIN_CLASS="neutron.plugins.bigswitch.plugin.NeutronRestProxyV2"
25 BS_FL_CONTROLLERS_PORT=${BS_FL_CONTROLLERS_PORT:-localhost:80}
26 BS_FL_CONTROLLER_TIMEOUT=${BS_FL_CONTROLLER_TIMEOUT:-10}
27}
28
Ian Wienandaee18c72014-02-21 15:35:08 +110029function neutron_plugin_configure_debug_command {
Mark McClainb05c8762013-07-06 23:29:39 -040030 _neutron_ovs_base_configure_debug_command
31}
32
Ian Wienandaee18c72014-02-21 15:35:08 +110033function neutron_plugin_configure_dhcp_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040034 :
35}
36
Ian Wienandaee18c72014-02-21 15:35:08 +110037function neutron_plugin_configure_l3_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040038 _neutron_ovs_base_configure_l3_agent
39}
40
Ian Wienandaee18c72014-02-21 15:35:08 +110041function neutron_plugin_configure_plugin_agent {
Kevin Benton753afeb2014-02-13 17:17:30 -080042 # Set up integration bridge
43 _neutron_ovs_base_setup_bridge $OVS_BRIDGE
44 iniset /$Q_PLUGIN_CONF_FILE restproxyagent integration_bridge $OVS_BRIDGE
45 AGENT_BINARY="$NEUTRON_DIR/neutron/plugins/bigswitch/agent/restproxy_agent.py"
46
47 _neutron_ovs_base_configure_firewall_driver
Mark McClainb05c8762013-07-06 23:29:39 -040048}
49
Ian Wienandaee18c72014-02-21 15:35:08 +110050function neutron_plugin_configure_service {
Mark McClainb05c8762013-07-06 23:29:39 -040051 iniset /$Q_PLUGIN_CONF_FILE restproxy servers $BS_FL_CONTROLLERS_PORT
52 iniset /$Q_PLUGIN_CONF_FILE restproxy servertimeout $BS_FL_CONTROLLER_TIMEOUT
Sean Dague16dd8b32014-02-03 09:10:54 +090053 if [ "$BS_FL_VIF_DRIVER" = "ivs" ]; then
Mark McClainb05c8762013-07-06 23:29:39 -040054 iniset /$Q_PLUGIN_CONF_FILE nova vif_type ivs
55 fi
56}
57
Ian Wienandaee18c72014-02-21 15:35:08 +110058function neutron_plugin_setup_interface_driver {
Mark McClainb05c8762013-07-06 23:29:39 -040059 local conf_file=$1
Sean Dague16dd8b32014-02-03 09:10:54 +090060 if [ "$BS_FL_VIF_DRIVER" = "ivs" ]; then
Martin Hickeydca49de2015-10-20 12:13:19 +010061 iniset $conf_file DEFAULT interface_driver ivs
Mark McClainb05c8762013-07-06 23:29:39 -040062 else
Martin Hickeydca49de2015-10-20 12:13:19 +010063 iniset $conf_file DEFAULT interface_driver openvswitch
Mark McClainb05c8762013-07-06 23:29:39 -040064 fi
65}
66
67
Ian Wienandaee18c72014-02-21 15:35:08 +110068function has_neutron_plugin_security_group {
Mark McClainb05c8762013-07-06 23:29:39 -040069 # 1 means False here
Kevin Benton753afeb2014-02-13 17:17:30 -080070 return 0
Mark McClainb05c8762013-07-06 23:29:39 -040071}
72
Ian Wienandaee18c72014-02-21 15:35:08 +110073function neutron_plugin_check_adv_test_requirements {
Mark McClainb05c8762013-07-06 23:29:39 -040074 is_service_enabled q-agt && is_service_enabled q-dhcp && return 0
75}
76
77# Restore xtrace
Ian Wienand523f4882015-10-13 11:03:03 +110078$_XTRACE_NEUTRON_BIGSWITCH