import os from pathlib import Path from dotenv import load_dotenv load_dotenv() def _get_base_dir() -> Path: infamous_dir = os.getenv("INFAMOUSDIR") if not infamous_dir: return Path(__file__).resolve().parent.parent.parent return Path(infamous_dir) / "projects-cea" / "artist-metadata-cea" BASE_DIR = _get_base_dir() class PATHS: base = BASE_DIR sql = BASE_DIR / "sql" sql_init = BASE_DIR / "sql" / "_create" class QUERY_PATHS: _sql = PATHS.sql _init = PATHS.sql_init # Operational queries snw_append = _sql / "snw-append.sql" snw_get_new = _sql / "snw-get-new.sql" rdb_get_cutoff = _sql / "rdb-get-cutoff.sql" # Init DDL snw_init = _init / "snw-init.sql" snw_init_vw = _init / "snw-init-vw.sql" rdb_init = _init / "rdb-init.sql" WAREHOUSES = { "large": "SME_ANALYTICS_FI_LARGE_WAREHOUSE", } TABLES = { "snw": "sme_analytics.fi.dim_artist_metadata", "snw_vw": "sme_analytics.shared.dim_artist_metadata", "rdb": "prod_shared.dim_artist_metadata", }