From f6c9e587950d809446830298b1a9ccb0a1594e83 Mon Sep 17 00:00:00 2001
From: Rolf Niepraschk <Rolf.Niepraschk@ptb.de>
Date: Wed, 11 Nov 2020 11:30:55 +0100
Subject: [PATCH] data path

---
 server    |  8 +++++++-
 server.py | 13 +++++++------
 2 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/server b/server
index e92d245..2388f2b 100755
--- a/server
+++ b/server
@@ -1,4 +1,10 @@
 #!/bin/bash
+
+if [ -z "$1" ]; then
+  echo "error: missing data path"
+  exit -1
+fi
+
 export FLASK_APP=server.py
 export FLASK_DEBUG=1
 export FLASK_ENV=development # TODO: FLASK_ENV=production
@@ -6,4 +12,4 @@ export FLASK_ENV=development # TODO: FLASK_ENV=production
 python3 -m venv ./
 source bin/activate
 pip3 install -e .
-python3 server.py
+python3 server.py "$1"
diff --git a/server.py b/server.py
index af6557b..4ad5f7d 100644
--- a/server.py
+++ b/server.py
@@ -2,10 +2,11 @@
 from flask import Flask, Response, request, send_from_directory
 from flask_cors import CORS 
 from urllib.parse import urlparse
-import requests, json
+import sys, requests
 
 app = Flask(__name__)
 
+DATA_PATH = sys.argv[1]
 COUCHDB_PROTO = 'http' 
 COUCHDB_PORT = '5984'
 DB = 'vl_db'
@@ -18,27 +19,27 @@ CORS(app)
 @app.route('/<fn>', methods=['GET'])
 def html(fn):
     app.logger.debug('hit html folder: ' + fn)
-    return send_from_directory('./data/web-apps', fn)
+    return send_from_directory(DATA_PATH + '/web-apps', fn)
 
 @app.route('/js/<path:fn>', methods=['GET'])
 def js(fn):
     app.logger.debug('hit js folder: ' + fn)
-    return send_from_directory('data/web-apps/js', fn)
+    return send_from_directory(DATA_PATH + '/web-apps/js', fn)
 
 @app.route('/css/<fn>', methods=['GET'])
 def css(fn):
     app.logger.debug('hit css folder: ' + fn)
-    return send_from_directory('data/web-apps/css', fn)
+    return send_from_directory(DATA_PATH + '/web-apps/css', fn)
 
 @app.route('/img/<fn>', methods=['GET'])
 def img(fn):
     app.logger.debug('hit img folder: ' + fn)
-    return send_from_directory('data/web-apps/img', fn)
+    return send_from_directory(DATA_PATH + '/web-apps/img', fn)
 
 @app.route('/lib/<path:fn>', methods=['GET'])
 def lib(fn):
     app.logger.debug('hit lib folder: ' + fn)
-    return send_from_directory('data/lib', fn)
+    return send_from_directory(DATA_PATH + '/lib', fn)
     
 '''
 The following works like a proxy server:
-- 
GitLab