Skip to content

process_manager_json_conf

drunc.process_manager.process_manager_json_conf

Classes

OpMonConfig

Bases: TypedDict

Subset of the OpMon JSON config actually parsed by the PM implementation.

ProcessManagerJsonConfData(type, settings, environment=dict(), opmon_conf=None, opmon_uri=None, kill_timeout=0.5, image='ghcr.io/dune-daq/alma9:latest') dataclass

Typed representation of a process manager JSON configuration.

Functions:

require_number(value, message)

Return value narrowed to int/float, or raise DruncSetupException.

Source code in drunc/process_manager/process_manager_json_conf.py
def require_number(value: object, message: str) -> int | float:
    """Return `value` narrowed to int/float, or raise DruncSetupException."""
    if not isinstance(value, (int, float)):
        raise DruncSetupException(message)
    return value

require_type(value, expected_type, message)

Return value narrowed to expected_type, or raise DruncSetupException.

Source code in drunc/process_manager/process_manager_json_conf.py
def require_type(value: object, expected_type: type[T], message: str) -> T:
    """Return `value` narrowed to `expected_type`, or raise DruncSetupException."""
    if not isinstance(value, expected_type):
        raise DruncSetupException(message)
    return value