From 426797f3919440a04dff39d612578205a9ab6325 Mon Sep 17 00:00:00 2001
From: michael <m.langguth@fz-juelich.de>
Date: Mon, 28 Feb 2022 17:26:10 +0100
Subject: [PATCH] Try installation in case virtual_envs-directory exist, but
 does not provide virtual_env-module.

---
 video_prediction_tools/env_setup/install_venv.sh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
 mode change 100644 => 100755 video_prediction_tools/env_setup/install_venv.sh

diff --git a/video_prediction_tools/env_setup/install_venv.sh b/video_prediction_tools/env_setup/install_venv.sh
old mode 100644
new mode 100755
index 1fe1ea40..3ff7e7b8
--- a/video_prediction_tools/env_setup/install_venv.sh
+++ b/video_prediction_tools/env_setup/install_venv.sh
@@ -38,21 +38,23 @@ fi
 
 # get Python-version
 PYTHON_VERSION=$(python3 -c 'import sys; version=sys.version_info[:2]; print("{0}.{1}".format(*version))')
+unset PYTHONPATH
 
 # create or change to  base directory for virtual environment (i.e. where the virtualenv-module is placed)
 if ! [[ -d "${VENV_BASE}" ]]; then
   mkdir "${VENV_BASE}"
   # Install virtualenv in this directory
   echo "Installing virtualenv under ${VENV_BASE}..."
-  pip install --target="${VENV_BASE}/" virtualenv
+  pip3 install --target="${VENV_BASE}/" virtualenv
   # Change into the base-directory of virtual environments...
   cd "${VENV_BASE}" || return
 else
   # Change into the base-directory of virtual environments...
   cd "${VENV_BASE}" || return
-  if ! python -m virtualenv --version >/dev/null; then
-    echo "ERROR: Base directory for virtual environment exists, but virtualenv-module is unavailable."
-    exit
+  if ! python3 -m virtualenv --version >/dev/null; then
+    echo "WARNING: Base directory for virtual environment exists, but virtualenv-module is unavailable."
+    echo "Try installing virtualenv."
+    pip3 install --target="${VENV_BASE}/" virtualenv
   fi
   echo "Virtualenv is already installed."
 fi
@@ -65,19 +67,21 @@ echo "Activating virtual environment ${VENV_NAME} to install required Python mod
 ACT_VENV="${VENV_DIR}/bin/activate"
 source "${VENV_DIR}/bin/activate"
 # set PYTHONPATH...
+export PYTHONPATH=""
 export PYTHONPATH=${WORKING_DIR}/virtual_envs/${VENV_NAME}/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
 export PYTHONPATH=${WORKING_DIR}:$PYTHONPATH
 export PYTHONPATH=${WORKING_DIR}/utils:$PYTHONPATH
 export PYTHONPATH=${WORKING_DIR}/model_modules:$PYTHONPATH
 export PYTHONPATH=${WORKING_DIR}/postprocess:$PYTHONPATH
 # ... also ensure that PYTHONPATH is appended when activating the virtual environment...
+echo 'export PYTHONPATH='"" >> ${ACT_VENV}
 echo 'export PYTHONPATH='${WORKING_DIR}'/virtual_envs/'${VENV_NAME}'/lib/python'${PYTHON_VERSION}'/site-packages:$PYTHONPATH' >> ${ACT_VENV}
 echo 'export PYTHONPATH='${WORKING_DIR}':$PYTHONPATH' >> ${ACT_VENV}
 echo 'export PYTHONPATH='${WORKING_DIR}'/utils:$PYTHONPATH' >> ${ACT_VENV}
 echo 'export PYTHONPATH='${WORKING_DIR}'/model_modules:$PYTHONPATH' >> ${ACT_VENV}
 echo 'export PYTHONPATH='${WORKING_DIR}'/postprocess:$PYTHONPATH' >> ${ACT_VENV}
 # ... install requirements
-pip install --no-cache-dir -r "${VENV_REQ}"
+pip3 install --no-cache-dir -r "${VENV_REQ}"
 
 # get back to basic directory
 cd "${BASE_DIR}" || exit
-- 
GitLab