TACKER_MODE=${TACKER_MODE:-all}
USE_BARBICAN=True
KUBERNETES_VIM=${KUBERNETES_VIM:-False}
IS_ZUUL_FT=${IS_ZUUL_FT:-False}

# Install the latest heat-translator and tosca-parser from git repos.
GITREPO["heat-translator"]=${HEAT_TRANSLATOR_REPO:-${GIT_BASE}/openstack/heat-translator.git}
GITBRANCH["heat-translator"]=${HEAT_TRANSLATOR_BRANCH:-$TARGET_BRANCH}
GITDIR["heat-translator"]=$DEST/heat-translator

GITREPO["tosca-parser"]=${TOSCA_PARSER_REPO:-${GIT_BASE}/openstack/tosca-parser.git}
GITBRANCH["tosca-parser"]=${TOSCA_PARSER_BRANCH:-$TARGET_BRANCH}
GITDIR["tosca-parser"]=$DEST/tosca-parser

LIBS_FROM_GIT+=heat-translator
LIBS_FROM_GIT+=tosca-parser

if [ "${TACKER_MODE}" == "all" -o "${IS_ZUUL_FT}" == "True" ]; then
    MGMT_PHYS_NET=${MGMT_PHYS_NET:-mgmtphysnet0}
    # br-infra is created by devstack multi node job
    # https://opendev.org/zuul/zuul-jobs/src/branch/master/roles/multi-node-bridge
    BR_MGMT=${BR_MGMT:-br-infra}
    NET_MGMT=${NET_MGMT:-net_mgmt}
    SUBNET_MGMT=${SUBNET_MGMT:-subnet_mgmt}
    FIXED_RANGE_MGMT=${FIXED_RANGE_MGMT:-192.168.120.0/24}
    NETWORK_GATEWAY_MGMT=${NETWORK_GATEWAY_MGMT:-192.168.120.1}
    NETWORK_GATEWAY_MGMT_IP=${NETWORK_GATEWAY_MGMT_IP:-192.168.120.1/24}

    NET0=${NET0:-net0}
    SUBNET0=${SUBNET0:-subnet0}
    FIXED_RANGE0=${FIXED_RANGE0:-10.10.0.0/24}
    NETWORK_GATEWAY0=${NETWORK_GATEWAY0:-10.10.0.1}

    NET1=${NET1:-net1}
    SUBNET1=${SUBNET1:-subnet1}
    FIXED_RANGE1=${FIXED_RANGE1:-10.10.1.0/24}
    NETWORK_GATEWAY1=${NETWORK_GATEWAY1:-10.10.1.1}
fi

if [ "${TACKER_MODE}" == "all" ]; then
    # Nova
    disable_service n-net
    VIRT_DRIVER=libvirt

    enable_service q-svc
    enable_service neutron

    enable_service tacker
    # enable tacker-conductor will make systemctl enable conductor service
    enable_service tacker-conductor

    if [ "${KUBERNETES_VIM}" == "True" ]; then
        # enable devstack-plugin-container services
        DEVSTACK_PLUGIN_CONTAINER_AGENTS=${DEVSTACK_PLUGIN_CONTAINER_AGENTS:-k8s-master,container}
        for i in $(echo $DEVSTACK_PLUGIN_CONTAINER_AGENTS | sed 's/,/ /g')
        do
            enable_service $i
        done
    fi
elif [ "${TACKER_MODE}" == "standalone" ]; then
    enable_service dstat
    enable_service tacker
    enable_service tacker-conductor
else
    die $LINENO "invalid value: $TACKER_MODE for TACKER_MODE"
fi
