from dotenv import dotenv_values import os from pathlib import Path # load_dotenv("/home/user/recommender-service-flask/src/.env") # config = dotenv_values("/home/user/recommender-service-flask/src/.env") env_path = Path(__file__).resolve().parents[1]/ ".env" config = dotenv_values(env_path) def env(name, default=None, cast=None): r = os.getenv(name) if r is None: r = config.get(name, default) if cast is not None: if cast == bool and isinstance(r, str): if r.lower() in ["true", "yes", "on", "1"]: r = True elif r.lower() in ["false", "no", "off", "0"]: r = False else: raise ValueError(f"Invalid boolean value: {r}") else: r = cast(r) return r