#!/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
}