INNER CODE UNIT · Python
_is_server_process
emersonfelipesp/netbox-proxbox · netbox_proxbox/__init__.py:31
def _is_server_process() -> bool:
"""Return True only when Django is being launched as a long-running server.
The startup push is only meaningful while NetBox is actually serving HTTP
(gunicorn / uvicorn / ``runserver``) or running an RQ worker. For
one-shot management commands such as ``createsuperuser``, ``migrate``,
``shell``, ``test``, etc., it must stay silent so its log output does
not bleed into interactive prompts.
"""
argv0 = os.path.basename(sys.argv[0]) if sys.argv else ""
is_manage_entrypoint = argv0 in {"manage.py", "django-admin", "django-admin.py"}
if not is_manage_entrypoint:
return True
subcommand = sys.argv[1] if len(sys.argv) > 1 else ""
return subcommand in _SERVER_MANAGEMENT_COMMANDS
def _deferred_startup_push() -> None: