BpsConfig

class lsst.ctrl.bps.BpsConfig(other, search_order=None, defaults=None, wms_service_class_fqn=None)

Bases: Config

Contains the configuration for a BPS submission.

Parameters:
otherstr, dict, Config, BpsConfig

Path to a YAML file or a dict/Config/BpsConfig containing configuration to copy.

search_orderlist [str], optional

Root section names in the order in which they should be searched.

defaultsstr, dict, Config, optional

Default settings that will be used to prepopulate the config. If the WMS service default settings are available, they will be added afterwards. WMS settings takes precedence over provided defaults.

wms_service_class_fqnstr, optional

Fully qualified name of the WMS service class to use to get plugin’s specific default settings. If None (default), the WMS service class provided by

  1. other config,

  2. environmental variable BPS_WMS_SERVICE_CLASS,

  3. default settings

will be used instead. The list above also reflects the priorities if the WMS service class is defined in multiple places. For example, the name of service class found in other takes precedence over the name of the service class provided by the BPS_SERVICE_CLASS and/or the default settings.

Raises:
ValueError

Raised if the class cannot be instantiated from the provided object.

Methods Summary

copy()

Make a copy of config.

get(key[, default])

Return the value for key if key is in the config, else default.

search(key[, opt])

Search for key using given opt following hierarchy rules.

Methods Documentation

copy()

Make a copy of config.

Returns:
copylsst.ctrl.bps.BpsConfig

A duplicate of itself.

get(key, default='')

Return the value for key if key is in the config, else default.

If default is not given, it defaults to an empty string.

Parameters:
keystr

Key to look for in config.

defaultAny, optional

Default value to return if the key is not in the config.

Returns:
valAny

Value from config if found, default otherwise.

Notes

The provided default value (an empty string) was chosen to maintain the internal consistency with other methods of the class.

search(key, opt=None)

Search for key using given opt following hierarchy rules.

Search hierarchy rules: current values, a given search object, and search order of config sections.

Parameters:
keystr

Key to look for in config.

optdict [str, Any], optional

Options dictionary to use while searching. All are optional.

"curvals"

Means to pass in values for search order key (curr_<sectname>) or variable replacements. (dict, optional)

"default"

Value to return if not found. (Any, optional)

"replaceEnvVars"

If search result is string, whether to replace environment variables inside it with special placeholder (<ENV:name>). By default set to False. (bool)

"expandEnvVars"

If search result is string, whether to replace environment variables inside it with current environment value. By default set to False. (bool)

"replaceVars"

If search result is string, whether to replace variables inside it. By default set to True. (bool)

"required"

If replacing variables, whether to raise exception if variable is undefined. By default set to False. (bool)

Returns:
foundbool

Whether name was in config or not.

valuestr, int, lsst.ctrl.bps.BpsConfig, …

Value from config if found.