fairdm.conf.addons#

Addon discovery and configuration loading.

Handles integration of FairDM addons that provide additional settings, apps, and middleware.

Module Contents#

Functions#

get_module_path

Get the file system path to a Python module.

discover_addon_setup_modules

Discover setup modules for the given addon packages.

discover_addon_urls

Discover URL configurations from addons.

load_addons

Load addon configurations and discover their URLs.

Data#

API#

logger#

‘getLogger(…)’

addon_urls: list[str]#

[]

get_module_path(module_name: str) → str[source]#

Get the file system path to a Python module.

Args: module_name: Fully qualified module name (e.g., ‘myapp.conf’).

Returns: Absolute path to the module file.

Raises: ModuleNotFoundError: The module cannot be found. ValueError: The module is a package, not a single file.

discover_addon_setup_modules(addons: list[str], env_profile: str) → list[tuple[str, str]][source]#

Discover setup modules for the given addon packages.

Args: addons: List of addon package names. env_profile: Environment profile, used for validation.

Returns: (addon_name, absolute path to its setup module file) pairs, one per addon whose setup module was found and passed validation. The name travels with its path so a later failure applying that file can still name the addon.

Raises: ImproperlyConfigured: An addon’s configuration is invalid, so production fails fast.

discover_addon_urls(addons: list[str]) → list[str][source]#

Discover URL configurations from addons.

Args: addons: List of addon package names.

Returns: Addon URL module paths (e.g., [‘addon1.urls’, ‘addon2.urls’]).

load_addons(addons: list[str], env_profile: str) → list[tuple[str, str]][source]#

Load addon configurations and discover their URLs.

This is the main entry point for addon integration. It discovers addon setup modules (for settings) and addon URL configurations.

Args: addons: List of addon package names. env_profile: The resolved environment name (e.g. “production”, “development”).

Returns: (addon_name, absolute path to its setup module file) pairs, as returned by discover_addon_setup_modules.