Skip to content

Exit

provide.foundation.process.exit

TODO: Add module docstring.

Functions

exit_error

exit_error(
    message: str | None = None, code: int = EXIT_ERROR
) -> None

Exit with error status.

Parameters:

Name Type Description Default
message str | None

Optional error message to log before exiting

None
code int

Exit code to use (defaults to EXIT_ERROR)

EXIT_ERROR
Source code in provide/foundation/process/exit.py
def exit_error(message: str | None = None, code: int = EXIT_ERROR) -> None:
    """Exit with error status.

    Args:
        message: Optional error message to log before exiting
        code: Exit code to use (defaults to EXIT_ERROR)

    """
    if message:
        logger = get_foundation_logger()
        logger.error(f"Exiting with error: {message}", exit_code=code)
    sys.exit(code)

exit_interrupted

exit_interrupted(
    message: str = "Process interrupted",
) -> None

Exit due to interrupt signal (SIGINT).

Parameters:

Name Type Description Default
message str

Message to log before exiting

'Process interrupted'
Source code in provide/foundation/process/exit.py
def exit_interrupted(message: str = "Process interrupted") -> None:
    """Exit due to interrupt signal (SIGINT).

    Args:
        message: Message to log before exiting

    """
    logger = get_foundation_logger()
    logger.warning(f"Exiting due to interrupt: {message}")
    sys.exit(EXIT_SIGINT)

exit_success

exit_success(message: str | None = None) -> None

Exit with success status.

Parameters:

Name Type Description Default
message str | None

Optional message to log before exiting

None
Source code in provide/foundation/process/exit.py
def exit_success(message: str | None = None) -> None:
    """Exit with success status.

    Args:
        message: Optional message to log before exiting

    """
    if message:
        logger = get_foundation_logger()
        logger.info(f"Exiting successfully: {message}")
    sys.exit(EXIT_SUCCESS)