YamlRepoImportBackend

class lsst.daf.butler.YamlRepoImportBackend(stream: IO, registry: lsst.daf.butler.registry._registry.Registry)

Bases: lsst.daf.butler.transfers._interfaces.RepoImportBackend

A repository import implementation that reads from a YAML file.

Parameters:
stream

A readable file-like object.

registry : Registry

The registry datasets will be imported into. Only used to retreive dataset types during construction; all write happen in register and load.

Methods Summary

load(datastore, *, directory, transfer, …) Import information associated with the backend into the given registry and datastore.
register() Register all runs and dataset types associated with the backend with the Registry the backend was constructed with.

Methods Documentation

load(datastore: Optional[lsst.daf.butler.core.datastore.Datastore], *, directory: Optional[str] = None, transfer: Optional[str] = None, skip_dimensions: Optional[Set[T]] = None) → None

Import information associated with the backend into the given registry and datastore.

This must be run after register, and may be performed inside a transaction.

Parameters:
datastore : Datastore

Datastore to import into. If None, datasets will only be inserted into the Registry (primarily intended for tests).

directory : str, optional

File all dataset paths are relative to.

transfer : str, optional

Transfer mode forwarded to Datastore.ingest.

skip_dimensions : set, optional

Dimensions that should be skipped and not imported. This can be useful when importing into a registry that already knows about a specific instrument.

register() → None

Register all runs and dataset types associated with the backend with the Registry the backend was constructed with.

These operations cannot be performed inside transactions, unlike those performed by load, and must in general be performed before load.