daxs.config: Configuration Management#
- class daxs.config.Config[source]#
Bases:
MutableMapping[str,Any]A singleton class to provide access to the configuration settings.
- read() None[source]#
Read the configuration settings from YAML files.
Checks multiple locations in order of priority:
Path specified in
DAXS_CONFIGenvironment variable (highest)config.ymlin current working directoryconfig.ymlin platform-specific global configuration directory (lowest)
Settings from higher priority files override those from lower priority files. Falls back to the internal default configuration if no files are found.
- write(default: bool = False) bool[source]#
Write configuration to the global configuration file.
- Parameters:
default – If True, write the default configuration instead of the current one, but only if the file does not exist yet.
- Returns:
True if the configuration was written successfully, False otherwise.
- Return type:
bool
- clear() None. Remove all items from D.#
- get(k[, d]) D[k] if k in D, else d. d defaults to None.#
- items() a set-like object providing a view on D's items#
- keys() a set-like object providing a view on D's keys#
- pop(k[, d]) v, remove specified key and return the corresponding value.#
If key is not found, d is returned if given, otherwise KeyError is raised.
- popitem() (k, v), remove and return some (key, value) pair#
as a 2-tuple; but raise KeyError if D is empty.
- setdefault(k[, d]) D.get(k,d), also set D[k]=d if k not in D#
- update([E, ]**F) None. Update D from mapping/iterable E and F.#
If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
- values() an object providing a view on D's values#