diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-12-06 21:25:52 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2014-12-06 21:25:52 +0200 |
| commit | 6c57c73430d7599ba045db4b518efa5a3c3e3641 (patch) | |
| tree | 5b37fa1ed6d2181a96e1c069817a394285ed7c25 /src-py/rhizi_server.py | |
| parent | 1c142b35db054df6aca833480b74a7ec2daeb34e (diff) | |
misc
Diffstat (limited to 'src-py/rhizi_server.py')
| -rw-r--r-- | src-py/rhizi_server.py | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/src-py/rhizi_server.py b/src-py/rhizi_server.py index 9b0b479c..f7b3dbb3 100644 --- a/src-py/rhizi_server.py +++ b/src-py/rhizi_server.py @@ -10,10 +10,15 @@ import db_controller as dbc import rhizi_api import flask import crypt_util +import re +from flask import Flask from flask import session from flask import redirect -from flask import url_for +from flask import request +from flask import send_from_directory + +from functools import wraps class Config(object): """ @@ -118,10 +123,14 @@ class FlaskExt(Flask): # ret.headers['Access-Control-Allow-Methods'] = ', '.join(m_list) return ret +def init_log(cfg): + """ + init log file, location derived from configuration + """ log = logging.getLogger('rhizi') log.setLevel(logging.DEBUG) log_handler_c = logging.StreamHandler() - log_handler_f = logging.FileHandler('/var/log/rhizi/rhizi-server.log') + log_handler_f = logging.FileHandler(cfg.log_path) log.addHandler(log_handler_c) log.addHandler(log_handler_f) @@ -206,12 +215,12 @@ def init_rest_api(cfg, flask_webapp): def init_webapp(cfg): root_path = cfg.root_path - webapp = rhizi_api.FlaskExt(__name__, - static_folder='static', - template_folder=os.path.join(root_path, 'templates'), - static_url_path='') + webapp = FlaskExt(__name__, + static_folder='static', + template_folder=os.path.join(root_path, 'templates'), + static_url_path=cfg.static_url_path) webapp.config.from_object(cfg) - webapp.root_path = root_path # for some reason calling config.from_pyfile() + webapp.root_path = root_path # for some reason calling config.from_xxx() does not have effect db_ctl = dbc.DB_Controller(cfg) rhizi_api.db_ctl = db_ctl @@ -232,12 +241,16 @@ if __name__ == "__main__": p.add_argument('--init-htpasswd-db', help='init login htpasswd db', action='store_const', const=True) args = p.parse_args() - log = init_logging() cfg = init_config(args.config_dir) + log = init_log(cfg) + log.debug('loaded configuration:\n%s' % cfg) + if args.init_htpasswd_db: + init_pw_db(cfg) + exit(0) webapp = init_webapp(cfg) - init_rest_api(webapp) + init_rest_api(cfg, webapp) log.info('launching webapp via Flusk development server') webapp.run(host=cfg.listen_address, |
