zulip/tools/install-mypy

34 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
# This script installs a python3 virtualenv called 'zulip-py3-venv' in zulip's parent directory.
# It then installs mypy and some other dependencies into that virtualenv.
# This script has been written for Ubuntu. If you want to install it on some other distro
# replace these commands with the corresponding commands for your distro.
# (for e.g. on Fedora replace apt-get with yum or dnf)
TOOLS_DIR=$(dirname "$0")
PY3_VENV_PATH="/srv/zulip-py3-venv"
if ! which python3 >/dev/null || ! which virtualenv >/dev/null; then
if which apt-get; then
sudo apt-get install -y python3 python-virtualenv
else
echo "Please install python3 and python-virtualenv."
exit 1
fi
fi
# create venv if required
if [ -d "$PY3_VENV_PATH" ]; then
echo "found virtualenv $PY3_VENV_PATH"
else
echo "creating virtualenv $PY3_VENV_PATH"
sudo virtualenv -p python3 "$PY3_VENV_PATH"
fi
source "$PY3_VENV_PATH/bin/activate"
# install mypy
sudo "$PY3_VENV_PATH/bin/pip3" install --upgrade pip
sudo "$PY3_VENV_PATH/bin/pip3" install --upgrade --no-deps -r "$TOOLS_DIR/setup/py3_test_reqs.txt"