|  | #!/bin/bash | 
|  |  | 
|  | # support vsctl or native. | 
|  | # until bug #1929446 is resolved we override the os-vif default | 
|  | # and fall back to the legacy "vsctl" driver. | 
|  | OS_VIF_OVS_OVSDB_INTERFACE=${OS_VIF_OVS_OVSDB_INTERFACE:="vsctl"} | 
|  |  | 
|  | function is_ml2_ovs { | 
|  | if [[ "${Q_AGENT}" == "openvswitch" ]]; then | 
|  | echo "True" | 
|  | fi | 
|  | echo "False" | 
|  | } | 
|  |  | 
|  | # This should be true for any ml2/ovs job but should be set to false for | 
|  | # all other ovs based jobs e.g. ml2/ovn | 
|  | OS_VIF_OVS_ISOLATE_VIF=${OS_VIF_OVS_ISOLATE_VIF:=$(is_ml2_ovs)} | 
|  | OS_VIF_OVS_ISOLATE_VIF=$(trueorfalse False OS_VIF_OVS_ISOLATE_VIF) | 
|  |  | 
|  | function configure_os_vif { | 
|  | if [[ -e ${NOVA_CONF} ]]; then | 
|  | iniset ${NOVA_CONF} os_vif_ovs ovsdb_interface ${OS_VIF_OVS_OVSDB_INTERFACE} | 
|  | iniset ${NOVA_CONF} os_vif_ovs isolate_vif ${OS_VIF_OVS_ISOLATE_VIF} | 
|  | fi | 
|  | if [[ -e ${NEUTRON_CONF} ]]; then | 
|  | iniset ${NEUTRON_CONF} os_vif_ovs ovsdb_interface ${OS_VIF_OVS_OVSDB_INTERFACE} | 
|  | iniset ${NEUTRON_CONF} os_vif_ovs isolate_vif ${OS_VIF_OVS_ISOLATE_VIF} | 
|  | fi | 
|  | } |