#!/usr/bin/env python3 """sage_datamart load_path — register RBAC permissions""" import os, subprocess MOD = "sage_datamart" SAGE_ROOT = os.path.expanduser("~/sage") PYTHON = os.path.join(SAGE_ROOT, "py3", "bin", "python") SET_PERM = os.path.join(SAGE_ROOT, "set_role_perm.py") PATHS_ANY = [ f"/{MOD}/cron/etl_sync.dspy", f"/{MOD}/cron/etl_aggregate.dspy", f"/{MOD}/cron/etl_provider_cost.dspy", ] PATHS_LOGINED = [ f"/{MOD}", f"/{MOD}/index.ui", f"/{MOD}/menu.ui", f"/{MOD}/provider_roi.ui", f"/{MOD}/api/%", f"/{MOD}/stat_avg_ttft.ui", f"/{MOD}/stat_success_rate.ui", f"/{MOD}/stat_total_calls.ui", f"/{MOD}/stat_total_users.ui", f"/{MOD}/stat_fail_calls.ui", f"/{MOD}/stat_today_usage.ui", f"/{MOD}/stat_today_amount.ui", f"/{MOD}/rt_card_calls.ui", f"/{MOD}/rt_card_amount.ui", f"/{MOD}/rt_card_users.ui", f"/{MOD}/rt_card_active.ui", f"/{MOD}/rt_card_online.ui", f"/{MOD}/rt_card_success.ui", f"/{MOD}/rt_card_fail.ui", f"/{MOD}/sect_model_perf.ui", f"/{MOD}/sect_currency.ui", f"/{MOD}/sect_provider_roi.ui", f"/{MOD}/sect_top_models.ui", f"/{MOD}/sect_top_users.ui", f"/{MOD}/sect_top_providers.ui", f"/{MOD}/sect_user_apikeys.ui", f"/{MOD}/sect_distributor_financial.ui", f"/{MOD}/sect_distributor_currency.ui", ] def run(role, path): subprocess.run([PYTHON, SET_PERM, role, path], capture_output=True) for p in PATHS_ANY: run("any", p) for p in PATHS_LOGINED: run("logined", p) print(f"[{MOD}] {len(PATHS_ANY)} any + {len(PATHS_LOGINED)} logined paths registered")