rtdproject: 'opendaylight-spectrometer'
toxdir: server
nodedir: web
- nodever: 4.4.6
+ nodever: 6.9.4
staging-server: spectrometer03.dfw.opendaylight.org
- job-template:
echo "---> Setup Python"
if [ -e venv-python34/bin/activate ]; then
echo "---> Updating Python dependencies"
+ source venv-python34/bin/activate
else
echo "---> virtualenv not found. Setting up new virtualenv."
- pyvenv venv-python34
+ pyvenv venv-python34 --without-pip
+ source venv-python34/bin/activate
+ wget https://bootstrap.pypa.io/get-pip.py
+ python get-pip.py
pip install -e spectrometer/server
fi
- source venv-python34/bin/activate
pip install --upgrade -r spectrometer/server/requirements.txt
+ pip install --upgrade gunicorn gevent
pip install --upgrade nodeenv
pip freeze
nodeenv --node={nodever} --prebuilt venv-nodejs
fi
source venv-nodejs/bin/activate
- npm install -g spectrometer/web
node -v
npm -v
- echo "---> Ensure mongo is running"
- ps -A | grep -q '[m]ongod'
- if [ ! "$?" -eq "0" ]; then
- echo "The mongod server DOWN", restarting...
- if [ ! -d mongo ]; then
- mkdir mongo
- fi
- echo "---> Starting mongo"
- mongod --dbpath ~/mongo &
- fi
-
echo "---> Restart spectrometer-api"
pkill gunicorn
sleep 5 # Sleep 5 seconds for cooldown
nohup gunicorn -b 0.0.0.0:5000 'spectrometer:run_app()' --timeout 600 -k gevent >> ~/gunicorn.out &
+ sleep 120 # Sleep 2 minutes to allow Spectrometer to initialize
echo "---> Restart spectrometer-web"
pkill node
sleep 5 # Sleep 5 seconds for cooldown
cd spectrometer/web
+ npm install
nohup npm start >> ~/node.out &
EOF