self.project_dir = project_dir
self.config_dir = config_dir
self._config = dotenv_values(str((config_dir / 'env.defaults').resolve()))
- if project_dir is not None:
+ if project_dir is not None and (project_dir / '.env').is_file():
self._config.update(dotenv_values(str((project_dir / '.env').resolve())))
# Add defaults for variables that are left empty to set the default.
self._config['NOMINATIM_ADDRESS_LEVEL_CONFIG'] = \
str(config_dir / 'address-levels.json')
- class _LibDirs: # pylint: disable=too-few-public-methods
+ class _LibDirs:
pass
self.lib_dir = _LibDirs()
"""
try:
return int(self.__getattr__(name))
- except ValueError:
+ except ValueError as exp:
LOG.fatal("Invalid setting NOMINATIM_%s. Needs to be a number.", name)
- raise UsageError("Configuration error.")
+ raise UsageError("Configuration error.") from exp
def get_libpq_dsn(self):