# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
+: ${YARDSTICK_REPO_DIR:='/home/opnfv/repos/yardstick'}
+
+# generate uwsgi config file
+mkdir -p /etc/yardstick
+uwsgi_config='/etc/yardstick/yardstick.ini'
+if [[ ! -e "${uwsgi_config}" ]];then
+
+ cat << EOF > "${uwsgi_config}"
+[uwsgi]
+master = true
+debug = true
+chdir = ${YARDSTICK_REPO_DIR}/api
+module = server
+plugins = python
+processes = 10
+threads = 5
+async = true
+max-requests = 5000
+chmod-socket = 666
+callable = app_wrapper
+enable-threads = true
+close-on-exec = 1
+daemonize= /var/log/yardstick/uwsgi.log
+socket = /var/run/yardstick.sock
+EOF
+ if [[ "${YARDSTICK_VENV}" ]];then
+ echo "virtualenv = ${YARDSTICK_VENV}" >> "${uwsgi_config}"
+ fi
+fi
+
# nginx config
nginx_config='/etc/nginx/conf.d/yardstick.conf'
index index.htm index.html;
location / {
include uwsgi_params;
- uwsgi_pass unix:///home/opnfv/repos/yardstick/api/yardstick.sock;
+ uwsgi_pass unix:///var/run/yardstick.sock;
}
}
EOF
fi
# nginx service start when boot
-cat << EOF >> /root/.bashrc
+supervisor_config='/etc/supervisor/conf.d/yardstick.conf'
-nginx_status=\$(service nginx status | grep not)
-if [ -n "\${nginx_status}" ];then
- service nginx restart
- uwsgi -i /home/opnfv/repos/yardstick/api/yardstick.ini
-fi
+if [[ ! -e "${supervisor_config}" ]];then
+ cat << EOF > "${supervisor_config}"
+[supervisord]
+nodaemon = true
+
+[program:yardstick_nginx]
+user = root
+command = service nginx restart
+autorestart = true
+
+[program:yardstick_uwsgi]
+user = root
+directory = /etc/yardstick
+command = uwsgi -i yardstick.ini
+autorestart = true
EOF
+fi
+
+# create api log directory
+mkdir -p /var/log/yardstick
+
+# create yardstick.sock for communicating
+touch /var/run/yardstick.sock