-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathset_environment.sh
executable file
·42 lines (37 loc) · 1.28 KB
/
set_environment.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/bin/env bash
# virtual environment name. Change name if so desired
VIRTUAL_ENVIRONMENT_DIR="venv"
# check for pip and install if not installed
REQUIRED_PIP="python3-pip"
PIP_OK=$(dpkg-query -W -f='${Status}\n' $REQUIRED_PIP | grep 'install ok installed')
echo -n "Checking for $REQUIRED_PIP: "
if [ "" = "$PIP_OK" ]; then
echo "NOT installed. Setting up $REQUIRED_PIP."
sudo apt --yes install $REQUIRED_PIP
else
echo "Installed"
fi
# check for pip package virtualenv and install if not installed
REQUIRED_VENV="virtualenv"
VENV_OK=$(pip list | grep $REQUIRED_VENV)
echo -n "Checking for $REQUIRED_VENV: "
if [ "" = "$VENV_OK" ]; then
echo "NOT installed. Setting up $REQUIRED_VENV."
pip install $REQUIRED_VENV
else
echo "Installed"
fi
# check for virtual environment directory and creates one if need be
echo -n "Virtual environment directory, $VIRTUAL_ENVIRONMENT_DIR, does "
if [ -d "$VIRTUAL_ENVIRONMENT_DIR" ]; then
echo "exist."
else
echo "NOT exist. Creating one."
python3 -m venv ./$VIRTUAL_ENVIRONMENT_DIR
fi
# enter virtual environment
. $VIRTUAL_ENVIRONMENT_DIR/bin/activate
# TODO: could just check if the packages in requirements.txt are already installed
# and install them if not. this is just simpler to do
# install requirements if new
pip3 install -r requirements.txt