#!/usr/bin/env python3 """Pipeline bridge module RBAC permission registration""" import subprocess MOD = "pipeline" # Public resources (no auth needed) PATHS_ANY = [ f"/{MOD}/pipeline.css", f"/{MOD}/pipeline.js", ] # Authenticated endpoints PATHS_LOGINED = [ f"/{MOD}/", f"/{MOD}/index.ui", f"/{MOD}/api/pipeline_list.dspy", f"/{MOD}/api/pipeline_detail.dspy", f"/{MOD}/api/pipeline_submit.dspy", f"/{MOD}/api/pipeline_modify.dspy", f"/{MOD}/api/pipeline_node.dspy", ] # SDLC module paths (pipeline_sdlc) SDLC_MOD = "pipeline_sdlc" SDLC_PATHS_ANY = [ f"/{SDLC_MOD}/index.ui", f"/{SDLC_MOD}/styles/sdlc.css", ] SDLC_PATHS_LOGINED = [ f"/{SDLC_MOD}", f"/{SDLC_MOD}/sd_project/index.ui", f"/{SDLC_MOD}/sd_project/get_sd_project_list.dspy", f"/{SDLC_MOD}/sd_project/add_sd_project_list.dspy", f"/{SDLC_MOD}/sd_project/update_sd_project_list.dspy", f"/{SDLC_MOD}/sd_project/delete_sd_project_list.dspy", f"/{SDLC_MOD}/sd_iteration/index.ui", f"/{SDLC_MOD}/sd_iteration/get_sd_iteration_list.dspy", f"/{SDLC_MOD}/sd_iteration/add_sd_iteration_list.dspy", f"/{SDLC_MOD}/sd_iteration/update_sd_iteration_list.dspy", f"/{SDLC_MOD}/sd_iteration/delete_sd_iteration_list.dspy", f"/{SDLC_MOD}/sd_test_plan/index.ui", f"/{SDLC_MOD}/sd_test_plan/get_sd_test_plan_list.dspy", f"/{SDLC_MOD}/sd_test_plan/add_sd_test_plan_list.dspy", f"/{SDLC_MOD}/sd_test_plan/update_sd_test_plan_list.dspy", f"/{SDLC_MOD}/sd_test_plan/delete_sd_test_plan_list.dspy", f"/{SDLC_MOD}/sd_test_case/index.ui", f"/{SDLC_MOD}/sd_test_case/get_sd_test_case_list.dspy", f"/{SDLC_MOD}/sd_test_case/add_sd_test_case_list.dspy", f"/{SDLC_MOD}/sd_test_case/update_sd_test_case_list.dspy", f"/{SDLC_MOD}/sd_test_case/delete_sd_test_case_list.dspy", f"/{SDLC_MOD}/sd_bug/index.ui", f"/{SDLC_MOD}/sd_bug/get_sd_bug_list.dspy", f"/{SDLC_MOD}/sd_bug/add_sd_bug_list.dspy", f"/{SDLC_MOD}/sd_bug/update_sd_bug_list.dspy", f"/{SDLC_MOD}/sd_bug/delete_sd_bug_list.dspy", f"/{SDLC_MOD}/sd_deploy_env/index.ui", f"/{SDLC_MOD}/sd_deploy_env/get_sd_deploy_env_list.dspy", f"/{SDLC_MOD}/sd_deploy_env/add_sd_deploy_env_list.dspy", f"/{SDLC_MOD}/sd_deploy_env/update_sd_deploy_env_list.dspy", f"/{SDLC_MOD}/sd_deploy_env/delete_sd_deploy_env_list.dspy", # SDLC API endpoints f"/{SDLC_MOD}/api/create_sd_project.dspy", f"/{SDLC_MOD}/api/update_sd_project.dspy", f"/{SDLC_MOD}/api/delete_sd_project.dspy", f"/{SDLC_MOD}/api/create_sd_iteration.dspy", f"/{SDLC_MOD}/api/update_sd_iteration.dspy", f"/{SDLC_MOD}/api/delete_sd_iteration.dspy", f"/{SDLC_MOD}/api/create_sd_bug.dspy", f"/{SDLC_MOD}/api/update_sd_bug.dspy", f"/{SDLC_MOD}/api/close_sd_bug.dspy", f"/{SDLC_MOD}/api/save_sd_deploy_env.dspy", f"/{SDLC_MOD}/api/get_project_options.dspy", f"/{SDLC_MOD}/api/get_iteration_options.dspy", f"/{SDLC_MOD}/api/check_iteration_bugs.dspy", f"/{SDLC_MOD}/api/submit_bug.dspy", # Dashboard f"/{SDLC_MOD}/sd_dashboard/dashboard.ui", ] def register_paths(): for path in PATHS_ANY: subprocess.run(["py3/bin/python", "set_role_perm.py", "any", path]) print(f" any: {path}") for path in PATHS_LOGINED: subprocess.run(["py3/bin/python", "set_role_perm.py", "logined", path]) print(f" logined: {path}") # Register SDLC paths for path in SDLC_PATHS_ANY: subprocess.run(["py3/bin/python", "set_role_perm.py", "any", path]) print(f" any (sdlc): {path}") for path in SDLC_PATHS_LOGINED: subprocess.run(["py3/bin/python", "set_role_perm.py", "logined", path]) print(f" logined (sdlc): {path}") if __name__ == "__main__": print(f"=== {MOD} RBAC registration ===") register_paths() print("Done.")