Make uploaded company logos persistent 91/63691/3 ovp-2.0.0
authorStamatis Katsaounis <mokats@intracom-telecom.com>
Thu, 18 Oct 2018 11:56:16 +0000 (14:56 +0300)
committerStamatis Katsaounis <mokats@intracom-telecom.com>
Thu, 18 Oct 2018 13:22:34 +0000 (13:22 +0000)
JIRA: DOVETAIL-741

This patch make uploaded company logos from administrator persistent
by saving them to a permanent docker volume, mounted to a specific
path inside api container.

Change-Id: I0b0ef66cc2b3761863a2f58da0196d302d4b5ade
Signed-off-by: Stamatis Katsaounis <mokats@intracom-telecom.com>
docker/Dockerfile.api
docker/docker-compose.yml
opnfv_testapi/resources/application_handlers.py

index 4840739..19bde76 100644 (file)
@@ -53,7 +53,8 @@ RUN git config --global http.sslVerify false && \
     git clone https://gerrit.opnfv.org/gerrit/dovetail-webportal $HOME/testapi && \
     cd $HOME/testapi && \
     git checkout -f $BRANCH && \
-    mkdir -p $HOME/testapi/logs/api
+    mkdir -p $HOME/testapi/logs/api && \
+    mkdir -p $HOME/testapi/media/companies
 
 WORKDIR $HOME/testapi
 
index c4bb0c4..12278c2 100644 (file)
@@ -41,6 +41,7 @@ services:
             - config.env
         volumes:
             - cvp-testapi-logs:/home/testapi/logs
+            - cvp-company-logos:/home/testapi/media/companies
         ports:
             - "8011:8011"
     nginx:
@@ -56,4 +57,5 @@ services:
 
 volumes:
     cvp-db:
+    cvp-company-logos:
     cvp-testapi-logs:
index 258c1aa..7cecd3e 100644 (file)
@@ -42,7 +42,7 @@ class ApplicationsLogoHandler(GenericApplicationHandler):
 
         fileinfo = self.request.files['file'][0]
         fname = fileinfo['filename']
-        location = '3rd_party/static/testapi-ui/assets/img/'
+        location = 'media/companies/'
         fh = open(location + fname, 'w')
         fh.write(fileinfo['body'])
         msg = 'Successfully uploaded logo: ' + fname
@@ -52,7 +52,7 @@ class ApplicationsLogoHandler(GenericApplicationHandler):
 
 class ApplicationsGetLogoHandler(GenericApplicationHandler):
     def get(self, filename):
-        location = '3rd_party/static/testapi-ui/assets/img/' + filename
+        location = 'media/companies/' + filename
         self.set_header('Content-Type', 'application/force-download')
         self.set_header('Content-Disposition',
                         'attachment; filename=%s' % filename)