Controller Configuration Module#

SPDX-FileCopyrightText: 2025 DESY and the Constellation authors SPDX-License-Identifier: EUPL-1.2

Controller configuration class

exception core.controller_configuration.ConfigKeyError(key: str, reason: str)#

Bases: ConfigParseError

exception core.controller_configuration.ConfigParseError(reason: str)#

Bases: RuntimeError

exception core.controller_configuration.ConfigValidationError(reason: str)#

Bases: ConfigParseError

exception core.controller_configuration.ConfigValueError(key: str, reason: str)#

Bases: ConfigParseError

class core.controller_configuration.ControllerConfiguration#

Bases: object

add_satellite_configuration(canonical_name: str, config: Configuration | dict[str, Any]) None#

Add or override an explicit configuration for a satellite

add_type_configuration(satellite_type: str, config: Configuration | dict[str, Any]) None#

Add or override an explicit configuration for a satellite type

static from_path(path: Path) ControllerConfiguration#

Create a controller configuration from a file

static from_string(config_string: str, file_type: FileType) ControllerConfiguration#

Create a controller configuration from a string in TOML or YAML

get_global_configuration() Configuration#

Get the global configuration section

get_satellite_configuration(canonical_name: str) Configuration#

Get configuration for a given satellite

get_type_configuration(satellite_type: str) Configuration#

Get configuration for a given satellite type

has_satellite_configuration(canonical_name: str) bool#

Check if an explicit configuration exists for a given satellite

has_type_configuration(satellite_type: str) bool#

Check if an explicit configuration exists for a given satellite type

set_global_configuration(config: Configuration | dict[str, Any]) None#

Set the global configuration section

class core.controller_configuration.FileType(*values)#

Bases: Enum

TOML = 2#
UNKNOWN = 1#
YAML = 3#
core.controller_configuration.load_config(path: str | Path) ControllerConfiguration#

Load a configuration file