pynenc.conf.validation_atomic_service

Validation for atomic-service scheduling configuration.

Runs once when a real runner starts. Raises AtomicServiceConfigError only when the configuration makes it impossible for atomic services to execute. Emits UserWarnings when execution is technically possible but windows are tight enough to cause frequent skips.

Module Contents

Functions

validate_atomic_service_config

Raise AtomicServiceConfigError if the atomic-service schedule cannot run. Emit UserWarnings when the schedule is tight enough to cause frequent skips.

Data

API

exception pynenc.conf.validation_atomic_service.AtomicServiceConfigError[source]

Bases: pynenc.exceptions.ConfigError

Raised when atomic-service configuration cannot produce runnable slots.

Initialization

Initialize self. See help(type(self)) for accurate signature.

pynenc.conf.validation_atomic_service._WARN_TWO_RUNNER_SLOT_MINUTES

None

pynenc.conf.validation_atomic_service.validate_atomic_service_config(conf: pynenc.conf.config_pynenc.ConfigPynenc, runner_conf: pynenc.conf.config_runner.ConfigRunner) None[source]

Raise AtomicServiceConfigError if the atomic-service schedule cannot run. Emit UserWarnings when the schedule is tight enough to cause frequent skips.

Hard failures (raises):

  • atomic_service_interval_minutes <= 0

  • atomic_service_check_interval_minutes <= 0

  • atomic_service_spread_margin_minutes >= atomic_service_interval_minutes

Warnings:

  • two-runner slot <= 0

  • two-runner slot very small (< _WARN_TWO_RUNNER_SLOT_MINUTES)

  • atomic_service_check_interval_minutes > two-runner slot

  • runner_loop_sleep_time_sec > two-runner slot