blob: e4cc754039a5e90f14297cb60097892cd2e826c3 [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
23 Q_DB_NAME="brcd_neutron"
24 Q_PLUGIN_CLASS="neutron.plugins.brocade.NeutronPlugin.BrocadePluginV2"
25}
26
Shiv Haris815ef982014-04-08 15:19:12 -070027function neutron_plugin_configure_service {
28
29 if [[ "$BROCADE_SWITCH_OS_VERSION" != "" ]]; then
30 iniset /$Q_PLUGIN_CONF_FILE switch osversion $BROCADE_SWITCH_OS_VERSION
31 fi
32
33 if [[ "$BROCADE_SWITCH_OS_TYPE" != "" ]]; then
34 iniset /$Q_PLUGIN_CONF_FILE switch ostype $BROCADE_SWITCH_OS_TYPE
35 fi
36
37 if [[ "$BROCADE_SWITCH_PASSWORD" != "" ]]; then
38 iniset /$Q_PLUGIN_CONF_FILE switch password $BROCADE_SWITCH_PASSWORD
39 fi
40
41 if [[ "$BROCADE_SWITCH_USERNAME" != "" ]]; then
42 iniset /$Q_PLUGIN_CONF_FILE switch username $BROCADE_SWITCH_USERNAME
43 fi
44
45 if [[ "$BROCADE_SWITCH_IPADDR" != "" ]]; then
46 iniset /$Q_PLUGIN_CONF_FILE switch address $BROCADE_SWITCH_IPADDR
47 fi
48
49}
50
Ian Wienandaee18c72014-02-21 15:35:08 +110051function neutron_plugin_configure_debug_command {
Mark McClainb05c8762013-07-06 23:29:39 -040052 iniset $NEUTRON_TEST_CONFIG_FILE DEFAULT external_network_bridge
53}
54
Ian Wienandaee18c72014-02-21 15:35:08 +110055function neutron_plugin_configure_dhcp_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040056 iniset $Q_DHCP_CONF_FILE DEFAULT dhcp_agent_manager neutron.agent.dhcp_agent.DhcpAgentWithStateReport
57}
58
Ian Wienandaee18c72014-02-21 15:35:08 +110059function neutron_plugin_configure_l3_agent {
Mark McClainb05c8762013-07-06 23:29:39 -040060 iniset $Q_L3_CONF_FILE DEFAULT external_network_bridge
61 iniset $Q_L3_CONF_FILE DEFAULT l3_agent_manager neutron.agent.l3_agent.L3NATAgentWithStateReport
62}
63
Ian Wienandaee18c72014-02-21 15:35:08 +110064function neutron_plugin_configure_plugin_agent {
Shiv Haris55d9b9a2014-01-14 11:33:28 -080065 AGENT_BINARY="$NEUTRON_BIN_DIR/neutron-linuxbridge-agent"
Mark McClainb05c8762013-07-06 23:29:39 -040066}
67
Ian Wienandaee18c72014-02-21 15:35:08 +110068function neutron_plugin_setup_interface_driver {
Mark McClainb05c8762013-07-06 23:29:39 -040069 local conf_file=$1
70 iniset $conf_file DEFAULT interface_driver neutron.agent.linux.interface.BridgeInterfaceDriver
71}
72
Ian Wienandaee18c72014-02-21 15:35:08 +110073function has_neutron_plugin_security_group {
Mark McClainb05c8762013-07-06 23:29:39 -040074 # 0 means True here
75 return 0
76}
77
Ian Wienandaee18c72014-02-21 15:35:08 +110078function neutron_plugin_check_adv_test_requirements {
Mark McClainb05c8762013-07-06 23:29:39 -040079 is_service_enabled q-agt && is_service_enabled q-dhcp && return 0
80}
81
82# Restore xtrace
83$BRCD_XTRACE