summaryrefslogtreecommitdiffstats
path: root/testcases/Controllers/ODL/CI/create_venv.sh
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2015-05-06 11:40:32 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2015-05-06 11:40:32 +0000
commit1d57861857c168266fc9e34588d94562464932a0 (patch)
treeac81031e9e2d6b1918abb36b56327014523b03c7 /testcases/Controllers/ODL/CI/create_venv.sh
parent9523fb6503e53f819b43c349fcfb5d65c93d6fd1 (diff)
parentbc49f02d832f2bf3d2e835583c1b8e3420fa4329 (diff)
Merge "Script for creating virtual environment added."
Diffstat (limited to 'testcases/Controllers/ODL/CI/create_venv.sh')
-rw-r--r--testcases/Controllers/ODL/CI/create_venv.sh35
1 files changed, 35 insertions, 0 deletions
diff --git a/testcases/Controllers/ODL/CI/create_venv.sh b/testcases/Controllers/ODL/CI/create_venv.sh
new file mode 100644
index 000000000..5d0733a5a
--- /dev/null
+++ b/testcases/Controllers/ODL/CI/create_venv.sh
@@ -0,0 +1,35 @@
+#!/bin/bash -e
+
+# Script checks that venv exists. If it doesn't it will be created
+# It requires python2.7 and virtualenv packages installed
+
+BASEDIR=`dirname $0`
+
+function venv_install() {
+ if command -v virtualenv-2.7; then
+ virtualenv-2.7 $1
+ elif command -v virtualenv2; then
+ virtualenv2 $1
+ elif command -v virtualenv; then
+ virtualenv $1
+ else
+ echo Please make sure virtualenv package is installed.
+ return 1
+ fi
+}
+
+# exit when something goes wrong during venv install
+set -e
+if [ ! -d "$BASEDIR/venv" ]; then
+ venv_install $BASEDIR/venv
+ echo "Virtualenv created."
+fi
+
+if [ ! -f "$BASEDIR/venv/updated" -o $BASEDIR/requirements.pip -nt $BASEDIR/venv/updated ]; then
+ source $BASEDIR/venv/bin/activate
+ pip install -r $BASEDIR/requirements.pip
+ touch $BASEDIR/venv/updated
+ echo "Requirements installed."
+ deactivate
+fi
+set +e