From 3b48f38d89eb1ce924f4b0279b8e547e94e92fd0 Mon Sep 17 00:00:00 2001 From: Jakub Dorfman Date: Sun, 26 Apr 2026 19:50:53 +0200 Subject: [PATCH] Refactor is_safe_name and read_app_info functions for improved readability Co-authored-by: Copilot --- panel-api.py | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/panel-api.py b/panel-api.py index d384207..7a00e65 100644 --- a/panel-api.py +++ b/panel-api.py @@ -407,30 +407,30 @@ INDEX_HTML = """ """ - def is_safe_name(name): - return re.match(r"^[a-z0-9]([a-z0-9-]*[a-z0-9])?$", name) is not None +def is_safe_name(name): + return re.match(r"^[a-z0-9]([a-z0-9-]*[a-z0-9])?$", name) is not None - def read_app_info(name): - if not is_safe_name(name): - return None, {"ok": False, "error": "invalid app name"} +def read_app_info(name): + if not is_safe_name(name): + return None, {"ok": False, "error": "invalid app name"} - result = run_panelctl(["show", name]) - if not result["ok"]: - return None, result + result = run_panelctl(["show", name]) + if not result["ok"]: + return None, result - app = parse_env_blob(result["stdout"]) - compose_file = app.get("APP_COMPOSE_FILE", "") - if not compose_file: - return None, {"ok": False, "error": "missing APP_COMPOSE_FILE in manifest"} + app = parse_env_blob(result["stdout"]) + compose_file = app.get("APP_COMPOSE_FILE", "") + if not compose_file: + return None, {"ok": False, "error": "missing APP_COMPOSE_FILE in manifest"} - base_stacks = os.path.join(BASE_DIR, "stacks") + os.sep - norm_compose = os.path.abspath(compose_file) - if not norm_compose.startswith(base_stacks): - return None, {"ok": False, "error": "compose path is outside allowed base directory"} + base_stacks = os.path.join(BASE_DIR, "stacks") + os.sep + norm_compose = os.path.abspath(compose_file) + if not norm_compose.startswith(base_stacks): + return None, {"ok": False, "error": "compose path is outside allowed base directory"} - app["APP_COMPOSE_FILE"] = norm_compose - return app, None + app["APP_COMPOSE_FILE"] = norm_compose + return app, None def run_panelctl(args):