Files
Dorod-Sky/skyvern/forge/forge_app_initializer.py
2025-11-18 17:56:58 -07:00

29 lines
949 B
Python

import structlog
from skyvern.config import settings
from skyvern.forge import set_force_app_instance
from skyvern.forge.forge_app import ForgeApp, create_forge_app
LOG = structlog.get_logger()
def start_forge_app() -> ForgeApp:
force_app_instance = create_forge_app()
set_force_app_instance(force_app_instance)
if settings.ADDITIONAL_MODULES:
for module in settings.ADDITIONAL_MODULES:
LOG.info("Loading additional module to set up api app", module=module)
app_module = __import__(module)
configure_app_fn = getattr(app_module, "configure_app", None)
if not configure_app_fn:
raise RuntimeError(f"Missing configure_app function in {module}")
configure_app_fn(force_app_instance)
LOG.info(
"Additional modules loaded to set up api app",
modules=settings.ADDITIONAL_MODULES,
)
return force_app_instance