Skip to content

fastflowtransform.settings

load_profiles

load_profiles(project_dir)

Read project.yml/profiles.yml and return a dict per environment. Expected format: { "dev": {"engine":"duckdb", "duckdb":{"path":":memory:"}}, ... }

Source code in src/fastflowtransform/settings.py
153
154
155
156
157
158
159
160
161
162
163
164
def load_profiles(project_dir: Path) -> dict:
    """
    Read project.yml/profiles.yml and return a dict per environment.
    Expected format:
      { "dev": {"engine":"duckdb", "duckdb":{"path":":memory:"}}, ... }
    """
    pf_path = project_dir / "profiles.yml"
    if not pf_path.exists():
        return {}
    raw_text = pf_path.read_text(encoding="utf-8")
    rendered = _render_profiles_template(raw_text, project_dir)
    return yaml.safe_load(rendered) or {}