blob: 511fb71d614afd3c9630f50158efd538f68356a9 [file] [log] [blame]
Mark McClainb05c8762013-07-06 23:29:39 -04001# Brocade Neutron Plugin
2# ----------------------
3
4# Save trace setting
5BRCD_XTRACE=$(set +o | grep xtrace)
6set +o xtrace
7
Ian Wienandaee18c72014-02-21 15:35:08 +11008function is_neutron_ovs_base_plugin {
Mark McClainb05c8762013-07-06 23:29:39 -04009 return 1
10}
11
Ian Wienandaee18c72014-02-21 15:35:08 +110012function neutron_plugin_create_nova_conf {
Mark McClainb05c8762013-07-06 23:29:39 -040013 NOVA_VIF_DRIVER=${NOVA_VIF_DRIVER:-"nova.virt.libvirt.vif.LibvirtGenericVIFDriver"}
14}
15
Ian Wienandaee18c72014-02-21 15:35:08 +110016function neutron_plugin_install_agent_packages {
Mark McClainb05c8762013-07-06 23:29:39 -040017 install_package bridge-utils
18}
19
Ian Wienandaee18c72014-02-21 15:35:08 +110020function neutron_plugin_configure_common {
Mark McClainb05c8762013-07-06 23:29:39 -040021 Q_PLUGIN_CONF_PATH=etc/neutron/plugins/brocade
22 Q_PLUGIN_CONF_FILENAME=brocade.ini
Mark McClainb05c8762013-07-06 23:29:39 -040023 Q_PLUGIN_CLASS="neutron.plugins.brocade.NeutronPlugin.BrocadePluginV2"
24}
25
Shiv Haris815ef982014-04-08 15:19:12 -070026function neutron_plugin_configure_service {
27
28 if [[ "$BROCADE_SWITCH_OS_VERSION" != "" ]]; then
29 iniset /$Q_PLUGIN_CONF_FILE switch osversion $BROCADE_SWITCH_OS_VERSION
30 fi
31
32 if [[ "$BROCADE_SWITCH_OS_TYPE" != "" ]]; then
33 iniset /$Q_PLUGIN_CONF_FILE switch ostype $BROCADE_SWITCH_OS_TYPE
34 fi
35
36 if [[ "$BROCADE_SWITCH_PASSWORD" != "" ]]; then
37 iniset /$Q_PLUGIN_CONF_FILE switch password $BROCADE_SWITCH_PASSWORD
38 fi
39
40 if [[ "$BROCADE_SWITCH_USERNAME" != "" ]]; then
41 iniset /$Q_PLUGIN_CONF_FILE switch username $BROCADE_SWITCH_USERNAME
42 fi
43
44 if [[ "$BROCADE_SWITCH_IPADDR" != "" ]]; then
45 iniset /$Q_PLUGIN_CONF_FILE switch address $BROCADE_SWITCH_IPADDR
46 fi
47
48}
49
Ian Wienandaee18c72014-02-21 15:35:08 +110050function neutron_plugin_configure_debug_command {
Mark McClainb05c8762013-07-06 23:29:39 -040051 iniset $NEUTRON_TEST_CONFIG_FILE DEFAULT external_network_bridge
52}
53
Ian Wienandaee18c72014-02-21 15:35:08 +110054function neutron_plugin_configure_dhcp_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040055 iniset $Q_DHCP_CONF_FILE DEFAULT dhcp_agent_manager neutron.agent.dhcp_agent.DhcpAgentWithStateReport
56}
57
Ian Wienandaee18c72014-02-21 15:35:08 +110058function neutron_plugin_configure_l3_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040059 iniset $Q_L3_CONF_FILE DEFAULT external_network_bridge
60 iniset $Q_L3_CONF_FILE DEFAULT l3_agent_manager neutron.agent.l3_agent.L3NATAgentWithStateReport
61}
62
Ian Wienandaee18c72014-02-21 15:35:08 +110063function neutron_plugin_configure_plugin_agent {
Shiv Haris55d9b9a2014-01-14 11:33:28 -080064 AGENT_BINARY="$NEUTRON_BIN_DIR/neutron-linuxbridge-agent"
Mark McClainb05c8762013-07-06 23:29:39 -040065}
66
Ian Wienandaee18c72014-02-21 15:35:08 +110067function neutron_plugin_setup_interface_driver {
Mark McClainb05c8762013-07-06 23:29:39 -040068 local conf_file=$1
69 iniset $conf_file DEFAULT interface_driver neutron.agent.linux.interface.BridgeInterfaceDriver
70}
71
Ian Wienandaee18c72014-02-21 15:35:08 +110072function has_neutron_plugin_security_group {
Mark McClainb05c8762013-07-06 23:29:39 -040073 # 0 means True here
74 return 0
75}
76
Ian Wienandaee18c72014-02-21 15:35:08 +110077function neutron_plugin_check_adv_test_requirements {
Mark McClainb05c8762013-07-06 23:29:39 -040078 is_service_enabled q-agt && is_service_enabled q-dhcp && return 0
79}
80
81# Restore xtrace
82$BRCD_XTRACE