43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
import logging
|
|
import os
|
|
|
|
import folder_paths
|
|
from server import PromptServer
|
|
|
|
from .rigshare_core.store import Store
|
|
from .rigshare_core.hub import Hub
|
|
from .rigshare_core.workspace import Workspace
|
|
from .rigshare_core import routes
|
|
|
|
NODE_CLASS_MAPPINGS = {}
|
|
NODE_DISPLAY_NAME_MAPPINGS = {}
|
|
WEB_DIRECTORY = "./web"
|
|
|
|
|
|
def data_folder():
|
|
return os.environ.get("RIGSHARE_DATA_DIR") or os.path.join(folder_paths.base_path, "rigshare")
|
|
|
|
|
|
def workflows_dir():
|
|
"""ComfyUI's workflows folder for the (single) default user."""
|
|
try:
|
|
user_root = folder_paths.get_public_user_directory("default")
|
|
except Exception:
|
|
user_root = None
|
|
return os.path.join(user_root or os.path.join(folder_paths.get_user_directory(), "default"), "workflows")
|
|
|
|
|
|
if hasattr(PromptServer, "instance"):
|
|
try:
|
|
folder = data_folder()
|
|
os.makedirs(folder, exist_ok=True)
|
|
store = Store(folder)
|
|
hub = Hub(store, PromptServer.instance)
|
|
hub.workspace = Workspace(store, workflows_dir())
|
|
routes.setup(PromptServer.instance, store, hub)
|
|
logging.info(f"[RigShare] ready, data in {folder}")
|
|
except Exception as e:
|
|
logging.exception(f"[RigShare] failed to start: {e}")
|
|
|
|
__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS", "WEB_DIRECTORY"]
|