5 - '{project-name}-node-jobs'
6 - '{project-name}-python-jobs'
7 - '{project-name}-rtd-jobs':
8 project-pattern: spectrometer
9 rtd-build-url: https://readthedocs.org/api/v2/webhook/opendaylight-spectrometer/32925/
10 rtd-token: 383146c345ca41b9e36859b6dcd57ffca38f21c7
11 - spectrometer-deploy-webapp-master
18 project-name: spectrometer
22 staging-server: spectrometer03.dfw.opendaylight.org
25 name: 'spectrometer-deploy-webapp-master'
27 project-type: freestyle
28 node: centos7-builder-2c-8g
32 - opendaylight-infra-properties:
33 build-days-to-keep: '{build-days-to-keep}'
37 - ssh-agent-credentials:
39 - 'spectrometer-deploy-key'
42 - gerrit-trigger-patch-merged:
43 gerrit-server-name: '{gerrit-server-name}'
50 echo "Deploying spectrometer"
51 ssh -oStrictHostKeyChecking=no spectrometer@{staging-server} 'bash -s' << EOF
53 if [ -e spectrometer ]; then
58 git clone https://git.opendaylight.org/gerrit/spectrometer
61 echo "---> Setup Python"
62 if [ -e venv-python34/bin/activate ]; then
63 echo "---> Updating Python dependencies"
64 source venv-python34/bin/activate
65 PYTHON="venv-python34/bin/python"
67 echo "---> virtualenv not found. Setting up new virtualenv."
68 pyvenv venv-python34 --without-pip
69 source venv-python34/bin/activate
70 PYTHON="venv-python34/bin/python"
71 wget https://bootstrap.pypa.io/get-pip.py
73 $PYTHON -m pip install -e spectrometer/server
75 $PYTHON -m pip install --upgrade -r spectrometer/server/requirements.txt
76 $PYTHON -m pip install --upgrade gunicorn gevent
77 $PYTHON -m pip install --upgrade nodeenv
78 $PYTHON -m pip install --upgrade pipdeptree
81 echo "---> Setup NodeJS"
82 if [ -e venv-nodejs/bin/activate ]; then
83 echo "---> Updating NodeJS dependencies"
85 echo "---> nodeenv not found. Setting up new nodeenv"
86 nodeenv --node={node-version} --prebuilt venv-nodejs
88 source venv-nodejs/bin/activate
92 echo "---> Restart spectrometer-api"
94 sleep 5 # Sleep 5 seconds for cooldown
95 spectrometer server sync
96 nohup gunicorn -b 0.0.0.0:5000 'spectrometer:run_app()' --timeout 600 -k gevent >> ~/gunicorn.out &
97 sleep 120 # Sleep 2 minutes to allow Spectrometer to initialize
99 echo "---> Restart spectrometer-web"
101 sleep 5 # Sleep 5 seconds for cooldown
104 nohup npm start >> ~/node.out &