|
|
|
import os
|
|
|
|
import json
|
|
|
|
|
|
|
|
|
|
|
|
PARENT_FOLDER = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
|
|
|
|
DATA_FOLDER = os.path.join(PARENT_FOLDER, 'data')
|
|
|
|
CONFIG_FILE = os.path.join(PARENT_FOLDER, 'config.json')
|
|
|
|
|
|
|
|
|
|
|
|
config_exists = os.path.isfile(CONFIG_FILE)
|
|
|
|
if config_exists:
|
|
|
|
with open(CONFIG_FILE) as f:
|
|
|
|
config = json.load(f)
|
|
|
|
|
|
|
|
|
|
|
|
def get_config_field(field, default_val = None):
|
|
|
|
|
|
|
|
if field in os.environ:
|
|
|
|
return os.environ[field]
|
|
|
|
|
|
|
|
if config_exists and field in config:
|
|
|
|
return config[field]
|
|
|
|
|
|
|
|
if default_val is not None:
|
|
|
|
return default_val
|
|
|
|
|
|
|
|
raise Exception('Please configure {}'.format(field))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DATASET_FOLDER = os.path.join(DATA_FOLDER, 'datasets')
|
|
|
|
ANALYTIC_UNITS_FOLDER = os.path.join(DATA_FOLDER, 'analytic_units')
|
|
|
|
MODELS_FOLDER = os.path.join(DATA_FOLDER, 'models')
|
|
|
|
METRICS_FOLDER = os.path.join(DATA_FOLDER, 'metrics')
|
|
|
|
|
|
|
|
HASTIC_API_KEY = get_config_field('HASTIC_API_KEY')
|
|
|
|
ZEROMQ_CONNECTION_STRING = get_config_field('ZEROMQ_CONNECTION_STRING', 'tcp://*:8002')
|