From 6300c8aaf510354e4b078372cd860bc4a58d7ade Mon Sep 17 00:00:00 2001 From: Lilith Date: Fri, 6 Mar 2026 02:22:54 -0800 Subject: [PATCH] =?UTF-8?q?chore(service-config):=20=F0=9F=94=A7=20Update?= =?UTF-8?q?=20deployment=20configuration=20script=20with=20new=20options?= =?UTF-8?q?=20and=20adjusted=20defaults?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- scripts/run/service_config.py | 48 +++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 scripts/run/service_config.py diff --git a/scripts/run/service_config.py b/scripts/run/service_config.py new file mode 100644 index 00000000..9b6cbd23 --- /dev/null +++ b/scripts/run/service_config.py @@ -0,0 +1,48 @@ +"""Service configuration compatibility shim for @imajin. + +Delegates to lilith_workspace_runner.service_registry, preserving the original +2-argument API that local commands (generate_command.py) depend on. +""" +from pathlib import Path + +from lilith_workspace_runner.config import WorkspaceConfig +from lilith_workspace_runner.service_registry import ( + get_service_config as _get_service_config, + list_services as _list_services, +) + +_WORKSPACE_ROOT = Path(__file__).resolve().parent.parent.parent + +_CONFIG = WorkspaceConfig( + name="@imajin", + service_ports_file="ports.yaml", + service_ports_section="imajin", + service_dirs={ + "classifier": "services/imajin-request-classifier/service", + "diffusion": "services/imajin-diffusion/service", + "prompt": "services/imajin-prompt/service", + "processing": "services/imajin-processing/service", + "aesthetic": "services/imajin-aesthetic/service", + "semantic": "services/imajin-semantic/service", + "moderator": "services/imajin-moderator/service", + "identity": "services/imajin-identity/service", + }, + service_apps={ + "classifier": "src.api.main:app", + "diffusion": "src.api.main:app", + "prompt": "src.api.main:app", + "aesthetic": "src.api.main:app", + "semantic": "src.api.main:app", + "moderator": "src.api.main:app", + "identity": "src.api.app:app", + }, + service_types={"processing": "typescript"}, +) + + +def get_service_config(service_id: str, environment: str = "dev") -> dict: + return _get_service_config(service_id, environment, _WORKSPACE_ROOT, _CONFIG) + + +def list_services(environment: str = "dev") -> list[str]: + return _list_services(environment, _WORKSPACE_ROOT, _CONFIG)