summaryrefslogtreecommitdiffstats
path: root/reporting/docker
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2016-12-24 23:08:46 +0000
committerchenjiankun <chenjiankun1@huawei.com>2016-12-30 15:38:08 +0000
commit74c7067bffccd76f92dcbf51ba9211b9d6c6e533 (patch)
treedfde359ceded9bd89f96aed25d1a326f3609e19e /reporting/docker
parent0d6df87202f4039ffff5e23957103cc1c8ca732a (diff)
Create Test Reporting landing page
JIRA: RELENG-165 In this patch, I do the follow things: 1.deploy tornado server(currently I haven't write any backend code, since the backend code depend on the testapi and I need to communicate with Serena). 2.landing page code(almostly finished. But I haven't the data, so for now, the data this page shows is a mock json. When the testapi and my backend code ready, this page will finally finished) 3.deployment: supervisor + nginx + tornado + angular usage: docker run -itd -p 8000:8000 opnfv/reporting:<tag> visit landing page: http://server_ip:8000/reporting/index.html test api: http://server_ip:8000/landing-page/filters visit old reporting page: http://server_ip:8000/display/master/yardstick/status-apex.html Change-Id: I527ab2661ce9e84b2942ebe673afbf5f2bc7878f Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'reporting/docker')
-rw-r--r--reporting/docker/Dockerfile7
-rw-r--r--reporting/docker/nginx.conf24
-rwxr-xr-xreporting/docker/reporting.sh18
-rw-r--r--reporting/docker/requirements.pip1
-rw-r--r--reporting/docker/supervisor.conf16
5 files changed, 65 insertions, 1 deletions
diff --git a/reporting/docker/Dockerfile b/reporting/docker/Dockerfile
index b5fe098..42f019a 100644
--- a/reporting/docker/Dockerfile
+++ b/reporting/docker/Dockerfile
@@ -32,6 +32,9 @@ ssh \
python-pip \
git-core \
wkhtmltopdf \
+nodejs \
+npm \
+supervisor \
--no-install-recommends
RUN pip install --upgrade pip
@@ -41,3 +44,7 @@ RUN pip install -r ${working_dir}/docker/requirements.pip
WORKDIR ${working_dir}
RUN docker/reporting.sh
+
+expose 8000
+
+CMD ["/usr/bin/supervisord"]
diff --git a/reporting/docker/nginx.conf b/reporting/docker/nginx.conf
new file mode 100644
index 0000000..9e26972
--- /dev/null
+++ b/reporting/docker/nginx.conf
@@ -0,0 +1,24 @@
+upstream backends {
+ server localhost:8001;
+ server localhost:8002;
+ server localhost:8003;
+ server localhost:8004;
+}
+
+
+server {
+ listen 8000;
+ server_name localhost;
+
+ location / {
+ proxy_pass http://backends;
+ }
+
+ location /reporting/ {
+ alias /home/opnfv/utils/test/reporting/pages/dist/;
+ }
+
+ location /display/ {
+ alias /home/opnfv/utils/test/reporting/display/;
+ }
+}
diff --git a/reporting/docker/reporting.sh b/reporting/docker/reporting.sh
index d6b173c..1bef1b8 100755
--- a/reporting/docker/reporting.sh
+++ b/reporting/docker/reporting.sh
@@ -61,4 +61,20 @@ else
echo "********************************"
python ./$project/reporting-$reporting_type.py
fi
-mv display /usr/share/nginx/html
+cp -r display /usr/share/nginx/html
+
+
+# nginx config
+cp /home/opnfv/utils/test/reporting/docker/nginx.conf /etc/nginx/conf.d/
+echo "daemon off;" >> /etc/nginx/nginx.conf
+
+# supervisor config
+cp /home/opnfv/utils/test/reporting/docker/supervisor.conf /etc/supervisor/conf.d/
+
+# build pages
+cd pages
+ln -s /usr/bin/nodejs /usr/bin/node
+npm install
+npm install -g grunt bower
+bower install --allow-root
+grunt build
diff --git a/reporting/docker/requirements.pip b/reporting/docker/requirements.pip
index c1bf4b1..6de856e 100644
--- a/reporting/docker/requirements.pip
+++ b/reporting/docker/requirements.pip
@@ -11,3 +11,4 @@ pdfkit==0.5.0
PyYAML==3.11
simplejson==3.8.1
jinja2==2.8
+tornado==4.4.2
diff --git a/reporting/docker/supervisor.conf b/reporting/docker/supervisor.conf
new file mode 100644
index 0000000..0c22077
--- /dev/null
+++ b/reporting/docker/supervisor.conf
@@ -0,0 +1,16 @@
+[supervisord]
+nodaemon = true
+
+[program:reporting_tornado]
+user = root
+directory = /home/opnfv/utils/test/reporting/api
+command = python server.py --port=800%(process_num)d
+process_name=%(program_name)s%(process_num)d
+numprocs=4
+numprocs_start=1
+autorestart = true
+
+[program:reporting_nginx]
+user = root
+command = service nginx restart
+autorestart = true