common.configuration.specs.pluggable_run_context
SupportsRunContext Objects
class SupportsRunContext(Protocol)
Describes where dlt
looks for settings, pipeline working folder
name
@property
def name() -> str
Name of the run context. Entities like sources and destinations added to registries when this context
is active, will be scoped to it. Typically corresponds to Python package name ie. dlt
.
global_dir
@property
def global_dir() -> str
Directory in which global settings are stored ie ~/.dlt/
run_dir
@property
def run_dir() -> str
Defines the current working directory
settings_dir
@property
def settings_dir() -> str
Defines where the current settings (secrets and configs) are located
data_dir
@property
def data_dir() -> str
Defines where the pipelines working folders are stored.
get_data_entity
def get_data_entity(entity: str) -> str
Gets path in data_dir where entity
(ie. pipelines
, repos
) are stored
get_run_entity
def get_run_entity(entity: str) -> str
Gets path in run_dir where entity
(ie. sources
, destinations
etc.) are stored
get_setting
def get_setting(setting_path: str) -> str
Gets path in settings_dir where setting (ie. secrets.toml
) are stored
PluggableRunContext Objects
class PluggableRunContext(ContainerInjectableContext)
Injectable run context taken via plugin