aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStamatis Katsaounis <mokats@intracom-telecom.com>2018-11-28 10:43:33 +0200
committerStamatis Katsaounis <mokats@intracom-telecom.com>2018-11-28 10:58:54 +0200
commit83c44e0acaed30f2388a69fd13ec806c38edfd73 (patch)
tree12408f8aa5814ea57e6381f2e99931b799f22a25
parent2735ea8a2aef55ebb0a48b50d9a0e36cf3f63b94 (diff)
Improve Docker deployment
JIRA: DOVETAIL-755 This patch improves Docker deployment. It removes the extra unwanted container. In addition, it removes unused files. Finally, it fixes the issue of python install where the static files of swagger where not installed inside the api container. Change-Id: Id74c88ab77182ed233f0eedad39ff8da245bb3dd Signed-off-by: Stamatis Katsaounis <mokats@intracom-telecom.com>
-rw-r--r--MANIFEST.in1
-rw-r--r--docker/Dockerfile.api3
-rw-r--r--docker/Dockerfile.web6
-rw-r--r--docker/config.env.sample2
-rw-r--r--docker/docker-compose.yml14
-rw-r--r--docker/nginx/fastcgi.conf26
-rw-r--r--docker/nginx/fastcgi_params25
-rw-r--r--docker/nginx/koi-utf109
-rw-r--r--docker/nginx/koi-win103
-rw-r--r--docker/nginx/mime.types89
-rw-r--r--docker/nginx/nginx.conf52
-rw-r--r--docker/nginx/proxy_params4
-rw-r--r--docker/nginx/scgi_params17
-rw-r--r--docker/nginx/sites-available/default260
-rw-r--r--docker/nginx/sites-enabled/default207
-rw-r--r--docker/nginx/snippets/fastcgi-php.conf13
-rw-r--r--docker/nginx/snippets/snakeoil.conf5
-rw-r--r--docker/nginx/uwsgi_params17
-rw-r--r--docker/nginx/win-utf125
-rw-r--r--docker/supervisor/supervisord.conf28
-rw-r--r--etc/config.ini3
-rw-r--r--opnfv_testapi/cmd/server.py2
-rw-r--r--opnfv_testapi/common/config.py4
-rw-r--r--opnfv_testapi/tests/unit/common/normal.ini3
-rw-r--r--opnfv_testapi/ui/root.py2
-rw-r--r--setup.cfg16
-rw-r--r--setup.py2
27 files changed, 113 insertions, 1025 deletions
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000..174b389
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1 @@
+recursive-include 3rd_party *
diff --git a/docker/Dockerfile.api b/docker/Dockerfile.api
index 19bde76..d40562a 100644
--- a/docker/Dockerfile.api
+++ b/docker/Dockerfile.api
@@ -49,8 +49,7 @@ RUN apt-get update && apt-get install -y \
RUN pip install -U setuptools
-RUN git config --global http.sslVerify false && \
- git clone https://gerrit.opnfv.org/gerrit/dovetail-webportal $HOME/testapi && \
+RUN git clone https://gerrit.opnfv.org/gerrit/dovetail-webportal $HOME/testapi && \
cd $HOME/testapi && \
git checkout -f $BRANCH && \
mkdir -p $HOME/testapi/logs/api && \
diff --git a/docker/Dockerfile.web b/docker/Dockerfile.web
index 78647da..853e0f8 100644
--- a/docker/Dockerfile.web
+++ b/docker/Dockerfile.web
@@ -22,8 +22,7 @@ RUN apt-get update && apt-get install -y \
npm \
&& rm -rf /var/lib/apt/lists/*
-RUN git config --global http.sslVerify false && \
- git clone https://gerrit.opnfv.org/gerrit/dovetail-webportal $HOME/testapi && \
+RUN git clone https://gerrit.opnfv.org/gerrit/dovetail-webportal $HOME/testapi && \
cd $HOME/testapi && \
git checkout -f $BRANCH && \
cd $HOME/testapi/3rd_party/static/testapi-ui && \
@@ -32,8 +31,7 @@ RUN git config --global http.sslVerify false && \
cp -r $HOME/testapi/3rd_party/static /www/
ADD nginx/nginx.conf /etc/nginx/nginx.conf
-ADD nginx/sites-enabled/default /etc/nginx/sites-available/default
-ADD nginx/sites-enabled/default /etc/nginx/sites-enabled/default
+ADD nginx/sites-available/default /etc/nginx/sites-available/default
ADD supervisor/conf.d/nginx.conf /etc/supervisor/conf.d/nginx.conf
ADD start-nginx.sh $HOME/start-nginx.sh
diff --git a/docker/config.env.sample b/docker/config.env.sample
index 96d3630..003d92f 100644
--- a/docker/config.env.sample
+++ b/docker/config.env.sample
@@ -1,3 +1,3 @@
mongodb_url=mongodb://mongodb:27017/
base_url=http://ovp.localhost
-testapi_url=testapi:8010
+testapi_url=cvpapi:8010
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index 12278c2..4edf4cc 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -1,17 +1,6 @@
---
version: '3'
services:
- testapi:
- image: opnfv/testapi:cvp.0.5.0
- container_name: cvp-testapi
- env_file:
- - config.env
- volumes:
- - cvp-testapi-logs:/home/testapi/logs
- links:
- - mongodb
- ports:
- - "8010:8010"
mongodb:
image: mongo:3.2.1
container_name: cvp-db
@@ -30,7 +19,6 @@ services:
- cvp-testapi-logs:/home/testapi/logs
links:
- mongodb
- - testapi
- cvpapi
ports:
- "8000:8000"
@@ -43,7 +31,7 @@ services:
- cvp-testapi-logs:/home/testapi/logs
- cvp-company-logos:/home/testapi/media/companies
ports:
- - "8011:8011"
+ - "8010:8010"
nginx:
image: jwilder/nginx-proxy
container_name: cvp-nginx
diff --git a/docker/nginx/fastcgi.conf b/docker/nginx/fastcgi.conf
deleted file mode 100644
index 091738c..0000000
--- a/docker/nginx/fastcgi.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-
-fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
-fastcgi_param QUERY_STRING $query_string;
-fastcgi_param REQUEST_METHOD $request_method;
-fastcgi_param CONTENT_TYPE $content_type;
-fastcgi_param CONTENT_LENGTH $content_length;
-
-fastcgi_param SCRIPT_NAME $fastcgi_script_name;
-fastcgi_param REQUEST_URI $request_uri;
-fastcgi_param DOCUMENT_URI $document_uri;
-fastcgi_param DOCUMENT_ROOT $document_root;
-fastcgi_param SERVER_PROTOCOL $server_protocol;
-fastcgi_param REQUEST_SCHEME $scheme;
-fastcgi_param HTTPS $https if_not_empty;
-
-fastcgi_param GATEWAY_INTERFACE CGI/1.1;
-fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
-
-fastcgi_param REMOTE_ADDR $remote_addr;
-fastcgi_param REMOTE_PORT $remote_port;
-fastcgi_param SERVER_ADDR $server_addr;
-fastcgi_param SERVER_PORT $server_port;
-fastcgi_param SERVER_NAME $server_name;
-
-# PHP only, required if PHP was built with --enable-force-cgi-redirect
-fastcgi_param REDIRECT_STATUS 200;
diff --git a/docker/nginx/fastcgi_params b/docker/nginx/fastcgi_params
deleted file mode 100644
index 28decb9..0000000
--- a/docker/nginx/fastcgi_params
+++ /dev/null
@@ -1,25 +0,0 @@
-
-fastcgi_param QUERY_STRING $query_string;
-fastcgi_param REQUEST_METHOD $request_method;
-fastcgi_param CONTENT_TYPE $content_type;
-fastcgi_param CONTENT_LENGTH $content_length;
-
-fastcgi_param SCRIPT_NAME $fastcgi_script_name;
-fastcgi_param REQUEST_URI $request_uri;
-fastcgi_param DOCUMENT_URI $document_uri;
-fastcgi_param DOCUMENT_ROOT $document_root;
-fastcgi_param SERVER_PROTOCOL $server_protocol;
-fastcgi_param REQUEST_SCHEME $scheme;
-fastcgi_param HTTPS $https if_not_empty;
-
-fastcgi_param GATEWAY_INTERFACE CGI/1.1;
-fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
-
-fastcgi_param REMOTE_ADDR $remote_addr;
-fastcgi_param REMOTE_PORT $remote_port;
-fastcgi_param SERVER_ADDR $server_addr;
-fastcgi_param SERVER_PORT $server_port;
-fastcgi_param SERVER_NAME $server_name;
-
-# PHP only, required if PHP was built with --enable-force-cgi-redirect
-fastcgi_param REDIRECT_STATUS 200;
diff --git a/docker/nginx/koi-utf b/docker/nginx/koi-utf
deleted file mode 100644
index e7974ff..0000000
--- a/docker/nginx/koi-utf
+++ /dev/null
@@ -1,109 +0,0 @@
-
-# This map is not a full koi8-r <> utf8 map: it does not contain
-# box-drawing and some other characters. Besides this map contains
-# several koi8-u and Byelorussian letters which are not in koi8-r.
-# If you need a full and standard map, use contrib/unicode2nginx/koi-utf
-# map instead.
-
-charset_map koi8-r utf-8 {
-
- 80 E282AC ; # euro
-
- 95 E280A2 ; # bullet
-
- 9A C2A0 ; # &nbsp;
-
- 9E C2B7 ; # &middot;
-
- A3 D191 ; # small yo
- A4 D194 ; # small Ukrainian ye
-
- A6 D196 ; # small Ukrainian i
- A7 D197 ; # small Ukrainian yi
-
- AD D291 ; # small Ukrainian soft g
- AE D19E ; # small Byelorussian short u
-
- B0 C2B0 ; # &deg;
-
- B3 D081 ; # capital YO
- B4 D084 ; # capital Ukrainian YE
-
- B6 D086 ; # capital Ukrainian I
- B7 D087 ; # capital Ukrainian YI
-
- B9 E28496 ; # numero sign
-
- BD D290 ; # capital Ukrainian soft G
- BE D18E ; # capital Byelorussian short U
-
- BF C2A9 ; # (C)
-
- C0 D18E ; # small yu
- C1 D0B0 ; # small a
- C2 D0B1 ; # small b
- C3 D186 ; # small ts
- C4 D0B4 ; # small d
- C5 D0B5 ; # small ye
- C6 D184 ; # small f
- C7 D0B3 ; # small g
- C8 D185 ; # small kh
- C9 D0B8 ; # small i
- CA D0B9 ; # small j
- CB D0BA ; # small k
- CC D0BB ; # small l
- CD D0BC ; # small m
- CE D0BD ; # small n
- CF D0BE ; # small o
-
- D0 D0BF ; # small p
- D1 D18F ; # small ya
- D2 D180 ; # small r
- D3 D181 ; # small s
- D4 D182 ; # small t
- D5 D183 ; # small u
- D6 D0B6 ; # small zh
- D7 D0B2 ; # small v
- D8 D18C ; # small soft sign
- D9 D18B ; # small y
- DA D0B7 ; # small z
- DB D188 ; # small sh
- DC D18D ; # small e
- DD D189 ; # small shch
- DE D187 ; # small ch
- DF D18A ; # small hard sign
-
- E0 D0AE ; # capital YU
- E1 D090 ; # capital A
- E2 D091 ; # capital B
- E3 D0A6 ; # capital TS
- E4 D094 ; # capital D
- E5 D095 ; # capital YE
- E6 D0A4 ; # capital F
- E7 D093 ; # capital G
- E8 D0A5 ; # capital KH
- E9 D098 ; # capital I
- EA D099 ; # capital J
- EB D09A ; # capital K
- EC D09B ; # capital L
- ED D09C ; # capital M
- EE D09D ; # capital N
- EF D09E ; # capital O
-
- F0 D09F ; # capital P
- F1 D0AF ; # capital YA
- F2 D0A0 ; # capital R
- F3 D0A1 ; # capital S
- F4 D0A2 ; # capital T
- F5 D0A3 ; # capital U
- F6 D096 ; # capital ZH
- F7 D092 ; # capital V
- F8 D0AC ; # capital soft sign
- F9 D0AB ; # capital Y
- FA D097 ; # capital Z
- FB D0A8 ; # capital SH
- FC D0AD ; # capital E
- FD D0A9 ; # capital SHCH
- FE D0A7 ; # capital CH
- FF D0AA ; # capital hard sign
-}
diff --git a/docker/nginx/koi-win b/docker/nginx/koi-win
deleted file mode 100644
index 72afabe..0000000
--- a/docker/nginx/koi-win
+++ /dev/null
@@ -1,103 +0,0 @@
-
-charset_map koi8-r windows-1251 {
-
- 80 88 ; # euro
-
- 95 95 ; # bullet
-
- 9A A0 ; # &nbsp;
-
- 9E B7 ; # &middot;
-
- A3 B8 ; # small yo
- A4 BA ; # small Ukrainian ye
-
- A6 B3 ; # small Ukrainian i
- A7 BF ; # small Ukrainian yi
-
- AD B4 ; # small Ukrainian soft g
- AE A2 ; # small Byelorussian short u
-
- B0 B0 ; # &deg;
-
- B3 A8 ; # capital YO
- B4 AA ; # capital Ukrainian YE
-
- B6 B2 ; # capital Ukrainian I
- B7 AF ; # capital Ukrainian YI
-
- B9 B9 ; # numero sign
-
- BD A5 ; # capital Ukrainian soft G
- BE A1 ; # capital Byelorussian short U
-
- BF A9 ; # (C)
-
- C0 FE ; # small yu
- C1 E0 ; # small a
- C2 E1 ; # small b
- C3 F6 ; # small ts
- C4 E4 ; # small d
- C5 E5 ; # small ye
- C6 F4 ; # small f
- C7 E3 ; # small g
- C8 F5 ; # small kh
- C9 E8 ; # small i
- CA E9 ; # small j
- CB EA ; # small k
- CC EB ; # small l
- CD EC ; # small m
- CE ED ; # small n
- CF EE ; # small o
-
- D0 EF ; # small p
- D1 FF ; # small ya
- D2 F0 ; # small r
- D3 F1 ; # small s
- D4 F2 ; # small t
- D5 F3 ; # small u
- D6 E6 ; # small zh
- D7 E2 ; # small v
- D8 FC ; # small soft sign
- D9 FB ; # small y
- DA E7 ; # small z
- DB F8 ; # small sh
- DC FD ; # small e
- DD F9 ; # small shch
- DE F7 ; # small ch
- DF FA ; # small hard sign
-
- E0 DE ; # capital YU
- E1 C0 ; # capital A
- E2 C1 ; # capital B
- E3 D6 ; # capital TS
- E4 C4 ; # capital D
- E5 C5 ; # capital YE
- E6 D4 ; # capital F
- E7 C3 ; # capital G
- E8 D5 ; # capital KH
- E9 C8 ; # capital I
- EA C9 ; # capital J
- EB CA ; # capital K
- EC CB ; # capital L
- ED CC ; # capital M
- EE CD ; # capital N
- EF CE ; # capital O
-
- F0 CF ; # capital P
- F1 DF ; # capital YA
- F2 D0 ; # capital R
- F3 D1 ; # capital S
- F4 D2 ; # capital T
- F5 D3 ; # capital U
- F6 C6 ; # capital ZH
- F7 C2 ; # capital V
- F8 DC ; # capital soft sign
- F9 DB ; # capital Y
- FA C7 ; # capital Z
- FB D8 ; # capital SH
- FC DD ; # capital E
- FD D9 ; # capital SHCH
- FE D7 ; # capital CH
- FF DA ; # capital hard sign
-}
diff --git a/docker/nginx/mime.types b/docker/nginx/mime.types
deleted file mode 100644
index 89be9a4..0000000
--- a/docker/nginx/mime.types
+++ /dev/null
@@ -1,89 +0,0 @@
-
-types {
- text/html html htm shtml;
- text/css css;
- text/xml xml;
- image/gif gif;
- image/jpeg jpeg jpg;
- application/javascript js;
- application/atom+xml atom;
- application/rss+xml rss;
-
- text/mathml mml;
- text/plain txt;
- text/vnd.sun.j2me.app-descriptor jad;
- text/vnd.wap.wml wml;
- text/x-component htc;
-
- image/png png;
- image/tiff tif tiff;
- image/vnd.wap.wbmp wbmp;
- image/x-icon ico;
- image/x-jng jng;
- image/x-ms-bmp bmp;
- image/svg+xml svg svgz;
- image/webp webp;
-
- application/font-woff woff;
- application/java-archive jar war ear;
- application/json json;
- application/mac-binhex40 hqx;
- application/msword doc;
- application/pdf pdf;
- application/postscript ps eps ai;
- application/rtf rtf;
- application/vnd.apple.mpegurl m3u8;
- application/vnd.ms-excel xls;
- application/vnd.ms-fontobject eot;
- application/vnd.ms-powerpoint ppt;
- application/vnd.wap.wmlc wmlc;
- application/vnd.google-earth.kml+xml kml;
- application/vnd.google-earth.kmz kmz;
- application/x-7z-compressed 7z;
- application/x-cocoa cco;
- application/x-java-archive-diff jardiff;
- application/x-java-jnlp-file jnlp;
- application/x-makeself run;
- application/x-perl pl pm;
- application/x-pilot prc pdb;
- application/x-rar-compressed rar;
- application/x-redhat-package-manager rpm;
- application/x-sea sea;
- application/x-shockwave-flash swf;
- application/x-stuffit sit;
- application/x-tcl tcl tk;
- application/x-x509-ca-cert der pem crt;
- application/x-xpinstall xpi;
- application/xhtml+xml xhtml;
- application/xspf+xml xspf;
- application/zip zip;
-
- application/octet-stream bin exe dll;
- application/octet-stream deb;
- application/octet-stream dmg;
- application/octet-stream iso img;
- application/octet-stream msi msp msm;
-
- application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
- application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;
-
- audio/midi mid midi kar;
- audio/mpeg mp3;
- audio/ogg ogg;
- audio/x-m4a m4a;
- audio/x-realaudio ra;
-
- video/3gpp 3gpp 3gp;
- video/mp2t ts;
- video/mp4 mp4;
- video/mpeg mpeg mpg;
- video/quicktime mov;
- video/webm webm;
- video/x-flv flv;
- video/x-m4v m4v;
- video/x-mng mng;
- video/x-ms-asf asx asf;
- video/x-ms-wmv wmv;
- video/x-msvideo avi;
-}
diff --git a/docker/nginx/nginx.conf b/docker/nginx/nginx.conf
index 98fb26a..f7d5055 100644
--- a/docker/nginx/nginx.conf
+++ b/docker/nginx/nginx.conf
@@ -6,7 +6,6 @@ daemon off;
events {
worker_connections 768;
- # multi_accept on;
}
http {
@@ -20,11 +19,6 @@ http {
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
- # server_tokens off;
-
- # server_names_hash_bucket_size 64;
- # server_name_in_redirect off;
-
include /etc/nginx/mime.types;
default_type application/octet-stream;
@@ -42,30 +36,6 @@ http {
gzip on;
gzip_disable "msie6";
- # gzip_vary on;
- # gzip_proxied any;
- # gzip_comp_level 6;
- # gzip_buffers 16 8k;
- # gzip_http_version 1.1;
- # gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
-
- ##
- # nginx-naxsi config
- ##
- # Uncomment it if you installed nginx-naxsi
- ##
-
- #include /etc/nginx/naxsi_core.rules;
-
- ##
- # nginx-passenger config
- ##
- # Uncomment it if you installed nginx-passenger
- ##
-
- #passenger_root /usr;
- #passenger_ruby /usr/bin/ruby;
-
##
# Virtual Host Configs
##
@@ -73,25 +43,3 @@ http {
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
-
-
-#mail {
-# # See sample authentication script at:
-# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
-#
-# # auth_http localhost/auth.php;
-# # pop3_capabilities "TOP" "USER";
-# # imap_capabilities "IMAP4rev1" "UIDPLUS";
-#
-# server {
-# listen localhost:110;
-# protocol pop3;
-# proxy on;
-# }
-#
-# server {
-# listen localhost:143;
-# protocol imap;
-# proxy on;
-# }
-#}
diff --git a/docker/nginx/proxy_params b/docker/nginx/proxy_params
deleted file mode 100644
index df75bc5..0000000
--- a/docker/nginx/proxy_params
+++ /dev/null
@@ -1,4 +0,0 @@
-proxy_set_header Host $http_host;
-proxy_set_header X-Real-IP $remote_addr;
-proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-proxy_set_header X-Forwarded-Proto $scheme;
diff --git a/docker/nginx/scgi_params b/docker/nginx/scgi_params
deleted file mode 100644
index 6d4ce4f..0000000
--- a/docker/nginx/scgi_params
+++ /dev/null
@@ -1,17 +0,0 @@
-
-scgi_param REQUEST_METHOD $request_method;
-scgi_param REQUEST_URI $request_uri;
-scgi_param QUERY_STRING $query_string;
-scgi_param CONTENT_TYPE $content_type;
-
-scgi_param DOCUMENT_URI $document_uri;
-scgi_param DOCUMENT_ROOT $document_root;
-scgi_param SCGI 1;
-scgi_param SERVER_PROTOCOL $server_protocol;
-scgi_param REQUEST_SCHEME $scheme;
-scgi_param HTTPS $https if_not_empty;
-
-scgi_param REMOTE_ADDR $remote_addr;
-scgi_param REMOTE_PORT $remote_port;
-scgi_param SERVER_PORT $server_port;
-scgi_param SERVER_NAME $server_name;
diff --git a/docker/nginx/sites-available/default b/docker/nginx/sites-available/default
index 765e33e..7652eb1 100644
--- a/docker/nginx/sites-available/default
+++ b/docker/nginx/sites-available/default
@@ -1,168 +1,100 @@
-# You may add here your
-# server {
-# ...
-# }
-# statements for each of your virtual hosts to this file
-
-##
-# You should look at the following URL's in order to grasp a solid understanding
-# of Nginx configuration files in order to fully unleash the power of Nginx.
-# http://wiki.nginx.org/Pitfalls
-# http://wiki.nginx.org/QuickStart
-# http://wiki.nginx.org/Configuration
-#
-# Generally, you will want to move this file somewhere, and start with a clean
-# file but keep this around for reference. Or just disable in sites-enabled.
-#
-# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
-##
-
-upstream testapi {
- server 192.168.33.101:8010;
-}
-
-upstream testapi_cvp {
- server 192.168.33.101:8011;
+upstream cvpapi {
+ server cvpapi:8010;
}
server {
- listen 8000 default_server;
- listen [::]:8000 default_server ipv6only=on;
-
- root /usr/share/nginx/html;
- index index.html index.htm;
-
- # Make site accessible from http://localhost/
- server_name localhost;
-
- #location ~* /testapi-ui/.+/\.(js|css|html|json|map|jpg|jpeg|gif|png|swf)$ {
- location ~* /testapi-ui/ {
- #if (-f $request_filename) {
- root /www/static;
- expires 1d;
- #break;
- #}
- }
-
- location ~* /logs/.*\.(log|out|yaml|yml|txt|conf|json|sh|)$ {
- root /home/testapi;
- add_header Content-Type text/plain;
- }
-
- location ~* /logs/.*/results {
- root /home/testapi;
- expires 1d;
- autoindex on;
- autoindex_exact_size off;
- autoindex_localtime on;
- }
-
- location /api/v1/auth {
- proxy_pass http://testapi_cvp/api/v1/auth;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/profile {
- proxy_pass http://testapi_cvp/api/v1/profile;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/test {
- proxy_pass http://testapi_cvp/api/v1/test;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/ {
- proxy_pass http://testapi/api/v1/;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location / {
- # First attempt to serve request as file, then
- # as directory, then fall back to displaying a 404.
- #try_files $uri $uri/ =404;
- # Uncomment to enable naxsi on this location
- # include /etc/nginx/naxsi.rules
- root /www/static/testapi-ui;
- expires 1d;
- }
-
- # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
- #location /RequestDenied {
- # proxy_pass http://127.0.0.1:8080;
- #}
-
- #error_page 404 /404.html;
-
- # redirect server error pages to the static page /50x.html
- #
- #error_page 500 502 503 504 /50x.html;
- #location = /50x.html {
- # root /usr/share/nginx/html;
- #}
-
- # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
- #
- #location ~ \.php$ {
- # fastcgi_split_path_info ^(.+\.php)(/.+)$;
- # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
- #
- # # With php5-cgi alone:
- # fastcgi_pass 127.0.0.1:9000;
- # # With php5-fpm:
- # fastcgi_pass unix:/var/run/php5-fpm.sock;
- # fastcgi_index index.php;
- # include fastcgi_params;
- #}
-
- # deny access to .htaccess files, if Apache's document root
- # concurs with nginx's one
- #
- #location ~ /\.ht {
- # deny all;
- #}
-}
+ listen 8000 default_server;
+ listen [::]:8000 default_server ipv6only=on;
+
+ root /usr/share/nginx/html;
+ index index.html index.htm;
+
+ server_name localhost;
+
+ location ~* /testapi-ui/ {
+ root /www/static;
+ expires 1d;
+ }
+
+ location ~* /logs/.*\.(log|out|yaml|yml|txt|conf|json|sh|)$ {
+ root /home/testapi;
+ add_header Content-Type text/plain;
+ }
+
+ location ~* /logs/.*/results {
+ root /home/testapi;
+ expires 1d;
+ autoindex on;
+ autoindex_exact_size off;
+ autoindex_localtime on;
+ }
+
+ location ~* /logs/api {
+ root /home/testapi;
+ expires 1d;
+ autoindex on;
+ autoindex_exact_size on;
+ autoindex_localtime on;
+ }
+
+ location /api/v1/cvp {
+ proxy_pass http://cvpapi/api/v1/cvp;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location /api/v1/auth {
+ proxy_pass http://cvpapi/api/v1/auth;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location /api/v1/profile {
+ proxy_pass http://cvpapi/api/v1/profile;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location /api/v1/test {
+ proxy_pass http://cvpapi/api/v1/test;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location = /api/v1/results {
+ proxy_pass http://cvpapi/api/v1/results;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location ~* /api/v1/results/([a-zA-Z0-9]+) {
+ client_max_body_size 20m;
+ proxy_pass http://cvpapi/api/v1/results/$1;
+ proxy_set_header X-Real_IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location ~* /api/v1/suts/hardware/([a-zA-Z0-9\-]+) {
+ proxy_pass http://cvpapi/api/v1/suts/hardware/$1;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location /api/v1/ {
+ proxy_pass http://cvpapi/api/v1/;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header Host $host;
+ }
+
+ location / {
+ root /www/static/testapi-ui;
+ expires 1d;
+ }
+
+ error_page 413 =200 /413.json;
+
+ location /413.json {
+ return 200 '{"msg": "Please upload a file less than 20MB.", "code": 413}';
+ }
-
-# another virtual host using mix of IP-, name-, and port-based configuration
-#
-#server {
-# listen 8000;
-# listen somename:8080;
-# server_name somename alias another.alias;
-# root html;
-# index index.html index.htm;
-#
-# location / {
-# try_files $uri $uri/ =404;
-# }
-#}
-
-
-# HTTPS server
-#
-#server {
-# listen 443;
-# server_name localhost;
-#
-# root html;
-# index index.html index.htm;
-#
-# ssl on;
-# ssl_certificate cert.pem;
-# ssl_certificate_key cert.key;
-#
-# ssl_session_timeout 5m;
-#
-# ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
-# ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
-# ssl_prefer_server_ciphers on;
-#
-# location / {
-# try_files $uri $uri/ =404;
-# }
-#}
+}
diff --git a/docker/nginx/sites-enabled/default b/docker/nginx/sites-enabled/default
deleted file mode 100644
index bc671b7..0000000
--- a/docker/nginx/sites-enabled/default
+++ /dev/null
@@ -1,207 +0,0 @@
-# You may add here your
-# server {
-# ...
-# }
-# statements for each of your virtual hosts to this file
-
-##
-# You should look at the following URL's in order to grasp a solid understanding
-# of Nginx configuration files in order to fully unleash the power of Nginx.
-# http://wiki.nginx.org/Pitfalls
-# http://wiki.nginx.org/QuickStart
-# http://wiki.nginx.org/Configuration
-#
-# Generally, you will want to move this file somewhere, and start with a clean
-# file but keep this around for reference. Or just disable in sites-enabled.
-#
-# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
-##
-
-upstream testapi {
- server testapi:8010;
-}
-
-upstream cvpapi {
- server cvpapi:8011;
-}
-
-server {
- listen 8000 default_server;
- listen [::]:8000 default_server ipv6only=on;
-
- root /usr/share/nginx/html;
- index index.html index.htm;
-
- # Make site accessible from http://localhost/
- server_name localhost;
-
- #location ~* /testapi-ui/.+/\.(js|css|html|json|map|jpg|jpeg|gif|png|swf)$ {
- location ~* /testapi-ui/ {
- #if (-f $request_filename) {
- root /www/static;
- expires 1d;
- #break;
- #}
- }
-
- location ~* /logs/.*\.(log|out|yaml|yml|txt|conf|json|sh|)$ {
- root /home/testapi;
- add_header Content-Type text/plain;
- }
-
- location ~* /logs/.*/results {
- root /home/testapi;
- expires 1d;
- autoindex on;
- autoindex_exact_size off;
- autoindex_localtime on;
- }
-
- location ~* /logs/api {
- root /home/testapi;
- expires 1d;
- autoindex on;
- autoindex_exact_size on;
- autoindex_localtime on;
- }
-
- location /api/v1/cvp {
- proxy_pass http://cvpapi/api/v1/cvp;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/auth {
- proxy_pass http://cvpapi/api/v1/auth;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/profile {
- proxy_pass http://cvpapi/api/v1/profile;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/test {
- proxy_pass http://cvpapi/api/v1/test;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location = /api/v1/results {
- proxy_pass http://testapi/api/v1/results;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location ~* /api/v1/results/([a-zA-Z0-9]+) {
- client_max_body_size 20m;
- proxy_pass http://cvpapi/api/v1/results/$1;
- proxy_set_header X-Real_IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location ~* /api/v1/suts/hardware/([a-zA-Z0-9\-]+) {
- proxy_pass http://cvpapi/api/v1/suts/hardware/$1;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location /api/v1/ {
- proxy_pass http://testapi/api/v1/;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Host $host;
- }
-
- location / {
- # First attempt to serve request as file, then
- # as directory, then fall back to displaying a 404.
- #try_files $uri $uri/ =404;
- # Uncomment to enable naxsi on this location
- # include /etc/nginx/naxsi.rules
- root /www/static/testapi-ui;
- expires 1d;
- }
-
- error_page 413 =200 /413.json;
-
- location /413.json {
- return 200 '{"msg": "Please upload a file less than 20MB.", "code": 413}';
- }
-
- # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
- #location /RequestDenied {
- # proxy_pass http://127.0.0.1:8080;
- #}
-
- #error_page 404 /404.html;
-
- # redirect server error pages to the static page /50x.html
- #
- #error_page 500 502 503 504 /50x.html;
- #location = /50x.html {
- # root /usr/share/nginx/html;
- #}
-
- # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
- #
- #location ~ \.php$ {
- # fastcgi_split_path_info ^(.+\.php)(/.+)$;
- # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
- #
- # # With php5-cgi alone:
- # fastcgi_pass 127.0.0.1:9000;
- # # With php5-fpm:
- # fastcgi_pass unix:/var/run/php5-fpm.sock;
- # fastcgi_index index.php;
- # include fastcgi_params;
- #}
-
- # deny access to .htaccess files, if Apache's document root
- # concurs with nginx's one
- #
- #location ~ /\.ht {
- # deny all;
- #}
-}
-
-
-# another virtual host using mix of IP-, name-, and port-based configuration
-#
-#server {
-# listen 8000;
-# listen somename:8080;
-# server_name somename alias another.alias;
-# root html;
-# index index.html index.htm;
-#
-# location / {
-# try_files $uri $uri/ =404;
-# }
-#}
-
-
-# HTTPS server
-#
-#server {
-# listen 443;
-# server_name localhost;
-#
-# root html;
-# index index.html index.htm;
-#
-# ssl on;
-# ssl_certificate cert.pem;
-# ssl_certificate_key cert.key;
-#
-# ssl_session_timeout 5m;
-#
-# ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
-# ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
-# ssl_prefer_server_ciphers on;
-#
-# location / {
-# try_files $uri $uri/ =404;
-# }
-#}
diff --git a/docker/nginx/snippets/fastcgi-php.conf b/docker/nginx/snippets/fastcgi-php.conf
deleted file mode 100644
index 8f8e4a2..0000000
--- a/docker/nginx/snippets/fastcgi-php.conf
+++ /dev/null
@@ -1,13 +0,0 @@
-# regex to split $uri to $fastcgi_script_name and $fastcgi_path
-fastcgi_split_path_info ^(.+\.php)(/.+)$;
-
-# Check that the PHP script exists before passing it
-try_files $fastcgi_script_name =404;
-
-# Bypass the fact that try_files resets $fastcgi_path_info
-# see: http://trac.nginx.org/nginx/ticket/321
-set $path_info $fastcgi_path_info;
-fastcgi_param PATH_INFO $path_info;
-
-fastcgi_index index.php;
-include fastcgi.conf;
diff --git a/docker/nginx/snippets/snakeoil.conf b/docker/nginx/snippets/snakeoil.conf
deleted file mode 100644
index ad26c3e..0000000
--- a/docker/nginx/snippets/snakeoil.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-# Self signed certificates generated by the ssl-cert package
-# Don't use them in a production server!
-
-ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
-ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
diff --git a/docker/nginx/uwsgi_params b/docker/nginx/uwsgi_params
deleted file mode 100644
index 09c732c..0000000
--- a/docker/nginx/uwsgi_params
+++ /dev/null
@@ -1,17 +0,0 @@
-
-uwsgi_param QUERY_STRING $query_string;
-uwsgi_param REQUEST_METHOD $request_method;
-uwsgi_param CONTENT_TYPE $content_type;
-uwsgi_param CONTENT_LENGTH $content_length;
-
-uwsgi_param REQUEST_URI $request_uri;
-uwsgi_param PATH_INFO $document_uri;
-uwsgi_param DOCUMENT_ROOT $document_root;
-uwsgi_param SERVER_PROTOCOL $server_protocol;
-uwsgi_param REQUEST_SCHEME $scheme;
-uwsgi_param HTTPS $https if_not_empty;
-
-uwsgi_param REMOTE_ADDR $remote_addr;
-uwsgi_param REMOTE_PORT $remote_port;
-uwsgi_param SERVER_PORT $server_port;
-uwsgi_param SERVER_NAME $server_name;
diff --git a/docker/nginx/win-utf b/docker/nginx/win-utf
deleted file mode 100644
index 774fd9f..0000000
--- a/docker/nginx/win-utf
+++ /dev/null
@@ -1,125 +0,0 @@
-# This map is not a full windows-1251 <> utf8 map: it does not
-# contain Serbian and Macedonian letters. If you need a full map,
-# use contrib/unicode2nginx/win-utf map instead.
-
-charset_map windows-1251 utf-8 {
-
- 82 E2809A; # single low-9 quotation mark
-
- 84 E2809E; # double low-9 quotation mark
- 85 E280A6; # ellipsis
- 86 E280A0; # dagger
- 87 E280A1; # double dagger
- 88 E282AC; # euro
- 89 E280B0; # per mille
-
- 91 E28098; # left single quotation mark
- 92 E28099; # right single quotation mark
- 93 E2809C; # left double quotation mark
- 94 E2809D; # right double quotation mark
- 95 E280A2; # bullet
- 96 E28093; # en dash
- 97 E28094; # em dash
-
- 99 E284A2; # trade mark sign
-
- A0 C2A0; # &nbsp;
- A1 D18E; # capital Byelorussian short U
- A2 D19E; # small Byelorussian short u
-
- A4 C2A4; # currency sign
- A5 D290; # capital Ukrainian soft G
- A6 C2A6; # borken bar
- A7 C2A7; # section sign
- A8 D081; # capital YO
- A9 C2A9; # (C)
- AA D084; # capital Ukrainian YE
- AB C2AB; # left-pointing double angle quotation mark
- AC C2AC; # not sign
- AD C2AD; # soft hypen
- AE C2AE; # (R)
- AF D087; # capital Ukrainian YI
-
- B0 C2B0; # &deg;
- B1 C2B1; # plus-minus sign
- B2 D086; # capital Ukrainian I
- B3 D196; # small Ukrainian i
- B4 D291; # small Ukrainian soft g
- B5 C2B5; # micro sign
- B6 C2B6; # pilcrow sign
- B7 C2B7; # &middot;
- B8 D191; # small yo
- B9 E28496; # numero sign
- BA D194; # small Ukrainian ye
- BB C2BB; # right-pointing double angle quotation mark
-
- BF D197; # small Ukrainian yi
-
- C0 D090; # capital A
- C1 D091; # capital B
- C2 D092; # capital V
- C3 D093; # capital G
- C4 D094; # capital D
- C5 D095; # capital YE
- C6 D096; # capital ZH
- C7 D097; # capital Z
- C8 D098; # capital I
- C9 D099; # capital J
- CA D09A; # capital K
- CB D09B; # capital L
- CC D09C; # capital M
- CD D09D; # capital N
- CE D09E; # capital O
- CF D09F; # capital P
-
- D0 D0A0; # capital R
- D1 D0A1; # capital S
- D2 D0A2; # capital T
- D3 D0A3; # capital U
- D4 D0A4; # capital F
- D5 D0A5; # capital KH
- D6 D0A6; # capital TS
- D7 D0A7; # capital CH
- D8 D0A8; # capital SH
- D9 D0A9; # capital SHCH
- DA D0AA; # capital hard sign
- DB D0AB; # capital Y
- DC D0AC; # capital soft sign
- DD D0AD; # capital E
- DE D0AE; # capital YU
- DF D0AF; # capital YA
-
- E0 D0B0; # small a
- E1 D0B1; # small b
- E2 D0B2; # small v
- E3 D0B3; # small g
- E4 D0B4; # small d
- E5 D0B5; # small ye
- E6 D0B6; # small zh
- E7 D0B7; # small z
- E8 D0B8; # small i
- E9 D0B9; # small j
- EA D0BA; # small k
- EB D0BB; # small l
- EC D0BC; # small m
- ED D0BD; # small n
- EE D0BE; # small o
- EF D0BF; # small p
-
- F0 D180; # small r
- F1 D181; # small s
- F2 D182; # small t
- F3 D183; # small u
- F4 D184; # small f
- F5 D185; # small kh
- F6 D186; # small ts
- F7 D187; # small ch
- F8 D188; # small sh
- F9 D189; # small shch
- FA D18A; # small hard sign
- FB D18B; # small y
- FC D18C; # small soft sign
- FD D18D; # small e
- FE D18E; # small yu
- FF D18F; # small ya
-}
diff --git a/docker/supervisor/supervisord.conf b/docker/supervisor/supervisord.conf
deleted file mode 100644
index afead15..0000000
--- a/docker/supervisor/supervisord.conf
+++ /dev/null
@@ -1,28 +0,0 @@
-; supervisor config file
-
-[unix_http_server]
-file=/var/run/supervisor.sock ; (the path to the socket file)
-chmod=0700 ; sockef file mode (default 0700)
-
-[supervisord]
-logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log)
-pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
-childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP)
-
-; the below section must remain in the config file for RPC
-; (supervisorctl/web interface) to work, additional interfaces may be
-; added by defining them in separate rpcinterface: sections
-[rpcinterface:supervisor]
-supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
-
-[supervisorctl]
-serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
-
-; The [include] section can just contain the "files" setting. This
-; setting can list multiple files (separated by whitespace or
-; newlines). It can also contain wildcards. The filenames are
-; interpreted as relative to this file. Included files *cannot*
-; include files themselves.
-
-[include]
-files = /etc/supervisor/conf.d/*.conf
diff --git a/etc/config.ini b/etc/config.ini
index 2cf08cc..13e6de5 100644
--- a/etc/config.ini
+++ b/etc/config.ini
@@ -9,7 +9,7 @@ dbname = test_results_collection
[api]
# Listening port
url = http://localhost:8000/api/v1
-port = 8011
+port = 8010
log_file = /home/testapi/logs/api/api.log
# Number of results for one page (integer value)
@@ -24,6 +24,7 @@ base_url = http://localhost:8000
[ui]
url = http://localhost:8000
+static_path = /usr/local/share/opnfv_testapi
[osid]
diff --git a/opnfv_testapi/cmd/server.py b/opnfv_testapi/cmd/server.py
index d503c8a..fee5877 100644
--- a/opnfv_testapi/cmd/server.py
+++ b/opnfv_testapi/cmd/server.py
@@ -45,7 +45,7 @@ my_logger.addHandler(handler)
def make_app():
swagger.docs(base_url=CONF.swagger_base_url,
- static_path=CONF.static_path)
+ static_path=CONF.ui_static_path)
return swagger.Application(
url_mappings.mappings,
debug=CONF.api_debug,
diff --git a/opnfv_testapi/common/config.py b/opnfv_testapi/common/config.py
index a6ab338..75bacf3 100644
--- a/opnfv_testapi/common/config.py
+++ b/opnfv_testapi/common/config.py
@@ -20,10 +20,6 @@ class Config(object):
self._set_config_file()
self._parse()
self._parse_per_page()
- self.static_path = os.path.join(
- os.path.dirname(os.path.normpath(__file__)),
- os.pardir,
- 'static')
self.base_path = "/home/testapi"
def _parse(self):
diff --git a/opnfv_testapi/tests/unit/common/normal.ini b/opnfv_testapi/tests/unit/common/normal.ini
index 6906913..678cb68 100644
--- a/opnfv_testapi/tests/unit/common/normal.ini
+++ b/opnfv_testapi/tests/unit/common/normal.ini
@@ -16,3 +16,6 @@ log_file = /dev/null
[swagger]
base_url = http://localhost:8000
+
+[ui]
+static_path = /usr/local/share/opnfv_testapi
diff --git a/opnfv_testapi/ui/root.py b/opnfv_testapi/ui/root.py
index 5b2c922..7f970b2 100644
--- a/opnfv_testapi/ui/root.py
+++ b/opnfv_testapi/ui/root.py
@@ -4,7 +4,7 @@ from opnfv_testapi.common.config import CONF
class RootHandler(GenericApiHandler):
def get_template_path(self):
- return CONF.static_path
+ return CONF.ui_static_path
def get(self):
self.render('testapi-ui/index.html')
diff --git a/setup.cfg b/setup.cfg
index 71174ff..9a55604 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,7 +1,7 @@
[metadata]
name = opnfv_testapi
summary = Test Result Collector
-description-file =
+description-file =
README.rst
author = SerenaFeng
author-email = feng.xiaowei@zte.com.cn
@@ -24,18 +24,9 @@ setup-hooks =
[files]
packages =
opnfv_testapi
-package_data =
- opnfv_testapi =
- static/*.*
- static/*/*.*
- static/*/*/*.*
- static/*/*/*/*.*
- static/*/*/*/*/*.*
- static/*/*/*/*/*/*.*
- static/*/*/*/*/*/*/*.*
data_files =
- /etc/opnfv_testapi =
- etc/config.ini
+ /etc/opnfv_testapi = etc/config.ini
+ /usr/local/share/opnfv_testapi = 3rd_party/static/*
[entry_points]
console_scripts =
@@ -45,4 +36,3 @@ console_scripts =
tag_build =
tag_date = 0
tag_svn_revision = 0
-
diff --git a/setup.py b/setup.py
index f689cb3..f165e65 100644
--- a/setup.py
+++ b/setup.py
@@ -9,5 +9,5 @@ except ImportError:
pass
setuptools.setup(
- setup_requires=['pbr==2.0.0'],
+ setup_requires=['pbr>=2.0.0'],
pbr=True)