47 lines
2.3 KiB
Python
47 lines
2.3 KiB
Python
from os import environ
|
|
|
|
|
|
CONFIGURATION_DIR = environ.get('CONFIGURATION_DIR', '/srv/risotto/configurations')
|
|
PROVIDER_FACTORY_CONFIG_DIR = environ.get('PROVIDER_FACTORY_CONFIG_DIR', '/srv/factory')
|
|
TMP_DIR = '/tmp'
|
|
DEFAULT_USER = environ.get('DEFAULT_USER', 'Anonymous')
|
|
RISOTTO_DB_NAME = environ.get('RISOTTO_DB_NAME', 'risotto')
|
|
RISOTTO_DB_PASSWORD = environ.get('RISOTTO_DB_PASSWORD', 'risotto')
|
|
RISOTTO_DB_USER = environ.get('RISOTTO_DB_USER', 'risotto')
|
|
TIRAMISU_DB_NAME = environ.get('TIRAMISU_DB_NAME', 'tiramisu')
|
|
TIRAMISU_DB_PASSWORD = environ.get('TIRAMISU_DB_PASSWORD', 'tiramisu')
|
|
TIRAMISU_DB_USER = environ.get('TIRAMISU_DB_USER', 'tiramisu')
|
|
DB_ADDRESS = environ.get('DB_ADDRESS', 'localhost')
|
|
MESSAGE_PATH = environ.get('MESSAGE_PATH', '/root/risotto-message/messages')
|
|
SQL_DIR = environ.get('SQL_DIR', './sql')
|
|
CACHE_ROOT_PATH = environ.get('CACHE_ROOT_PATH', '/var/cache/risotto')
|
|
SRV_SEED_PATH = environ.get('SRV_SEED_PATH', '/srv/seed')
|
|
|
|
|
|
def dsn_factory(database, user, password, address=DB_ADDRESS):
|
|
mangled_address = '/var/run/postgresql' if address == 'localhost' else address
|
|
return f'postgres:///{database}?host={mangled_address}/&user={user}&password={password}'
|
|
|
|
|
|
def get_config():
|
|
return {'database': {'dsn': dsn_factory(RISOTTO_DB_NAME, RISOTTO_DB_USER, RISOTTO_DB_PASSWORD),
|
|
'tiramisu_dsn': dsn_factory(TIRAMISU_DB_NAME, TIRAMISU_DB_USER, TIRAMISU_DB_PASSWORD),
|
|
},
|
|
'http_server': {'port': 8080,
|
|
'default_user': DEFAULT_USER},
|
|
'global': {'message_root_path': MESSAGE_PATH,
|
|
'configurations_dir': CONFIGURATION_DIR,
|
|
'debug': True,
|
|
'internal_user': 'internal',
|
|
'check_role': True,
|
|
'admin_user': DEFAULT_USER,
|
|
'sql_dir': SQL_DIR},
|
|
'cache': {'root_path': CACHE_ROOT_PATH},
|
|
'servermodel': {'internal_source_path': SRV_SEED_PATH,
|
|
'internal_source': 'internal'},
|
|
'submodule': {'allow_insecure_https': False,
|
|
'pki': '192.168.56.112'},
|
|
'provider': {'factory_configuration_dir': PROVIDER_FACTORY_CONFIG_DIR,
|
|
'factory_configuration_filename': 'infra.json'},
|
|
}
|