#!/bin/sh

#
# Wrapper script to find python version to use.
#

# Find python binary
PY_BIN=$(which python)
if [ -z "$PY_BIN" ]; then
    PY_BIN=$(which python3)
fi
if [ -z "$PY_BIN" ]; then
    echo "No python found. Aborting"
    exit 1
fi


# Verify Python version
PY_VMAJOR=$($PY_BIN -c "import sys; print(sys.version_info.major)")
PY_VMINOR=$($PY_BIN -c "import sys; print(sys.version_info.minor)")

if [ "$PY_VMAJOR" -eq 2 -a "$PY_VMINOR" -lt 7 ]; then
    echo "Python v2.7 or v3.0 or higher is required" >&2
    exit 1
fi

# Find path to the real ansible-cmdb python script
BIN_DIR=$(dirname $0)
if [ -f "$BIN_DIR/ansible-cmdb.py" ]; then
    ANSIBLE_CMDB="$BIN_DIR/ansible-cmdb.py"
elif [ -f "$BIN_DIR/../lib/ansible-cmdb/ansible-cmdb.py" ]; then
    ANSIBLE_CMDB="$BIN_DIR/../lib/ansible-cmdb/ansible-cmdb.py"
elif [ -f "$BIN_DIR/../lib/ansiblecmdb/ansible-cmdb.py" ]; then
    ANSIBLE_CMDB="$BIN_DIR/../lib/ansiblecmdb/ansible-cmdb.py"
else
    echo "Couldn't find $BIN_DIR/ansible-cmdb.py in . or $BIN_DIR/../lib/ansible-cmdb/ or $BIN_DIR/../lib/ansiblecmdb/ (cwd=$PWD)" >&2
    exit 2
fi

# Run it
$PY_BIN $ANSIBLE_CMDB "$@"
