- project:
name: spectrometer
jobs:
- - '{project-name}-merge-rtd-{stream}'
- - '{project-name}-verify-node-{stream}'
- - '{project-name}-verify-python-{stream}'
- - 'spectrometer-deploy-webapp-master'
+ - '{project-name}-node-jobs'
+ - '{project-name}-python-jobs'
+ - '{project-name}-rtd-jobs':
+ project-pattern: spectrometer
+ - spectrometer-deploy-webapp-master
stream:
- master:
branch: 'master'
- project: 'spectrometer'
- project-name: 'spectrometer'
- rtdproject: 'opendaylight-spectrometer'
- toxdir: server
- nodedir: web
- nodever: 6.9.4
+ project: spectrometer
+ project-name: spectrometer
+ rtd-project: opendaylight-spectrometer
+ tox-dir: server
+ node-dir: web
+ node-version: 6.11.4
staging-server: spectrometer03.dfw.opendaylight.org
- job-template:
name: 'spectrometer-deploy-webapp-master'
project-type: freestyle
- node: centos7-java-builder-2c-4g
+ node: centos7-builder-2c-8g
concurrent: false
properties:
triggers:
- gerrit-trigger-patch-merged:
- server-name: '{server-name}'
+ gerrit-server-name: '{gerrit-server-name}'
name: 'spectrometer'
branch: 'master'
+ - timed: '@daily'
builders:
- shell: |
if [ -e venv-python34/bin/activate ]; then
echo "---> Updating Python dependencies"
source venv-python34/bin/activate
+ PYTHON="venv-python34/bin/python"
else
echo "---> virtualenv not found. Setting up new virtualenv."
pyvenv venv-python34 --without-pip
source venv-python34/bin/activate
+ PYTHON="venv-python34/bin/python"
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
- pip install -e spectrometer/server
+ $PYTHON -m pip install -e spectrometer/server
fi
- pip install --upgrade -r spectrometer/server/requirements.txt
- pip install --upgrade gunicorn gevent
- pip install --upgrade nodeenv
- pip freeze
+ $PYTHON -m pip install --upgrade -r spectrometer/server/requirements.txt
+ $PYTHON -m pip install --upgrade gunicorn gevent
+ $PYTHON -m pip install --upgrade nodeenv
+ $PYTHON -m pip install --upgrade pipdeptree
+ pipdeptree
echo "---> Setup NodeJS"
if [ -e venv-nodejs/bin/activate ]; then
echo "---> Updating NodeJS dependencies"
else
echo "---> nodeenv not found. Setting up new nodeenv"
- nodeenv --node={nodever} --prebuilt venv-nodejs
+ nodeenv --node={node-version} --prebuilt venv-nodejs
fi
source venv-nodejs/bin/activate
node -v
echo "---> Restart spectrometer-api"
pkill gunicorn
sleep 5 # Sleep 5 seconds for cooldown
+ spectrometer server sync
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