ButlerRepoIndex¶
- class lsst.daf.butler.ButlerRepoIndex¶
Bases:
object
Index of all known butler repositories.
The index of butler repositories is found by looking for a configuration file at the URI pointed at by the environment variable
$DAF_BUTLER_REPOSITORY_INDEX
. The configuration file is a simple dictionary lookup of the form:label1: uri1 label2: uri2
and can be in YAML or JSON format. The content of the file will be cached.
Attributes Summary
The name of the environment variable to read to locate the index.
Methods Summary
Return possible reason for failure to return repository index.
Retrieve the list of known repository labels.
get_repo_uri
(label[, return_label])Look up the label in a butler repository index.
Attributes Documentation
- index_env_var: ClassVar[str] = 'DAF_BUTLER_REPOSITORY_INDEX'¶
The name of the environment variable to read to locate the index.
Methods Documentation
- classmethod get_failure_reason() str ¶
Return possible reason for failure to return repository index.
- Returns:
- reason
str
If there is a problem reading the repository index, this will contain a string with an explanation. Empty string if everything worked.
- reason
Notes
The value returned is only reliable if called immediately after a failure. The most recent failure reason is reset every time an attempt is made to request a label and so the reason can be out of date.
- classmethod get_repo_uri(label: str, return_label: bool = False) ResourcePath ¶
Look up the label in a butler repository index.
- Parameters:
- label
str
Label of the Butler repository to look up.
- return_label
bool
, optional If
label
cannot be found in the repository index (either because index is not defined orlabel
is not in the index) andreturn_label
isTrue
then returnResourcePath(label)
. Ifreturn_label
isFalse
(default) then an exception will be raised instead.
- label
- Returns:
- uri
lsst.resources.ResourcePath
URI to the Butler repository associated with the given label or default value if it is provided.
- uri
- Raises:
- KeyError
Raised if the label is not found in the index, or if an index is not defined, and
return_label
isFalse
.- FileNotFoundError
Raised if an index is defined in the environment but it can not be found.