"csrc/sm90/flash_api.cpp" did not exist on "65fb7732fc5f95edea30019296b1940c759ae321"
test_python_install.sh 2.11 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
# Some debug echoes
echo "Python on path: `which python`"
echo "Python cmd: $PYTHON_EXE"
echo "pip on path: $(which pip)"
echo "pip cmd: $PIP_CMD"
echo "virtualenv on path: $(which virtualenv)"
echo "virtualenv cmd: $VIRTUALENV_CMD"

# Check that a pip install puts scripts on path
pip install delocate
delocate-listdeps --version || ingest "Delocate not installed right"

# Python version from Python to compare against required
Kyle Stewart's avatar
Kyle Stewart committed
14
15
16
17
18
19
20
21
22
23
24
25
26
27
if [[ $($PYTHON_EXE --version 2>&1 | awk '{print $2}') =~ ([0-9.]*).?([0-9.]*) ]]
then
    # CPython version, 2.7.x on both CPython 2.7 and PyPy 5.4
    cpython_version=${BASH_REMATCH[1]}
    # CPython/PyPy version
    implementer_version=${BASH_REMATCH[2]:-$cpython_version}
fi
python_mm="${cpython_version:0:1}.${cpython_version:2:1}"

requested_version=${PYTHON_VERSION:-${MB_PYTHON_VERSION:-${PYPY_VERSION:-${PYPY3_VERSION}}}}
# remove any version tags which my have been added to the enviroment variable
if [[ "$requested_version" =~ [^-]* ]]; then
    requested_version="$BASH_REMATCH"
fi
28

Kyle Stewart's avatar
Kyle Stewart committed
29
30
31
# simple regex match, a 2.7 pattern will match 2.7.11, but not 2
if ! [[ "$implementer_version" =~ $requested_version ]]; then
    ingest "Wrong python version: $implementer_version"
32
33
34
35
fi

if [ -n "$VENV" ]; then  # in virtualenv
    # Correct pip and Python versions should be on PATH
Kyle Stewart's avatar
Kyle Stewart committed
36
    if [ "$($PYTHON_EXE --version 2>&1)" != "$(python --version 2>&1)" ]; then
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
        ingest "Python versions do not match"
    fi
    if [ "$($PIP_CMD --version)" != "$(pip --version)" ]; then
        ingest "Pip versions do not match"
    fi
    # Versions in environment variables have full path
    if [ "$PYTHON_EXE" != "$PWD/venv/bin/python" ]; then
        ingest "Wrong virtualenv python '$PYTHON_EXE'"
    fi
    if [ "$PIP_CMD" != "$PWD/venv/bin/pip" ]; then
        ingest "Wrong virtualenv pip '$PIP_CMD'"
    fi
else # not virtualenv
    macpie_bin="$MACPYTHON_PY_PREFIX/$python_mm/bin"
    if [ "$PYTHON_EXE" != "$macpie_bin/python$python_mm" ]; then
        ingest "Wrong macpython python cmd '$PYTHON_EXE'"
    fi
    if [ "$PIP_CMD" != "sudo $macpie_bin/pip$python_mm" ]; then
        ingest "Wrong macpython pip '$PIP_CMD'"
    fi
fi