from http import HTTPStatus
from codecs import getreader
from os import environ, path
-from osm_nbi import version as nbi_version, version_date as nbi_version_date
+from osm_nbi import version as _nbi_version, version_date as nbi_version_date
__author__ = "Alfonso Tierno <alfonso.tiernosepulveda@telefonica.com>"
auth_database_version = '1.0'
nbi_server = None # instance of Server class
subscription_thread = None # instance of SubscriptionThread class
+nbi_version = _nbi_version # by default this is fixed in the code
"""
def __init__(self):
self.instance += 1
- self.engine = Engine()
self.authenticator = Authenticator(valid_url_methods, valid_query_string)
+ self.engine = Engine(self.authenticator.tokens_cache)
def _format_in(self, kwargs):
try:
cherrypy.request.login += ";{}={}".format(logging_id, outdata[logging_id][:36])
+def _get_version():
+ """
+ Try to get version from package using pkg_resources (available with setuptools)
+ """
+ global nbi_version
+ try:
+ from pkg_resources import get_distribution
+ nbi_version = get_distribution("osm_nbi").version
+ except Exception:
+ pass
+
+
def _start_service():
"""
Callback function called when cherrypy.engine starts
# load and print version. Ignore possible errors, e.g. file not found
try:
+ _get_version()
backend = engine_config["authentication"]["backend"]
- nbi_version
cherrypy.log.error("Starting OSM NBI Version '{}' with '{}' authentication backend"
.format(nbi_version + " " + nbi_version_date, backend))
except Exception: