- class homer.devices.Device(fqdn, metadata, config, private)¶
Create new instance of Device(fqdn, metadata, config, private)
- class homer.devices.Devices(devices: Mapping[str, MutableMapping[str, str]], devices_config: Mapping[str, Mapping], private_config: Mapping[str, Mapping] | None = None)¶
Collection of devices, accessible by FQDN as a dict or role and site via dedicated accessors.
Initialize the instance.
devices (dict) -- the devices configuration with FQDN as key and a dictionary with the device metadata as value.
devices_config (dict) -- the devices configuration with FQDN as key and a dictionary with the device-specific configuration as value.
private_config (dict, optional) -- an optional dictionary of the devices private configuration with the FQDN as key and a dictionary of device-specific private configuration as value. It cannot have top level keys in common with the same device public configuration.
- query(query_string: str) List[Device] ¶
Get the devices matching the query.
If needed, expand the query capabilities with a proper syntax using pyparsing.