24 lines
630 B
Python
24 lines
630 B
Python
"""root Websocket URLS"""
|
|
from importlib import import_module
|
|
|
|
from structlog.stdlib import get_logger
|
|
|
|
from authentik.lib.utils.reflection import get_apps
|
|
|
|
LOGGER = get_logger()
|
|
|
|
websocket_urlpatterns = []
|
|
for _authentik_app in get_apps():
|
|
try:
|
|
api_urls = import_module(f"{_authentik_app.name}.urls")
|
|
except ModuleNotFoundError:
|
|
continue
|
|
if not hasattr(api_urls, "websocket_urlpatterns"):
|
|
continue
|
|
urls: list = getattr(api_urls, "websocket_urlpatterns")
|
|
websocket_urlpatterns.extend(urls)
|
|
LOGGER.debug(
|
|
"Mounted Websocket URLs",
|
|
app_name=_authentik_app.name,
|
|
)
|