Differential D8684 Diff 40807 examples/docs_snippets/docs_snippets/concepts/io_management/config_input_manager.py
Changeset View
Changeset View
Standalone View
Standalone View
examples/docs_snippets/docs_snippets/concepts/io_management/config_input_manager.py
# pylint: disable=unused-argument | # pylint: disable=unused-argument | ||||
from dagster import ( | from dagster import ( | ||||
InputDefinition, | InputDefinition, | ||||
ModeDefinition, | ModeDefinition, | ||||
execute_pipeline, | execute_pipeline, | ||||
pipeline, | pipeline, | ||||
root_input_manager, | root_input_manager, | ||||
solid, | solid, | ||||
) | ) | ||||
def read_dataframe_from_table(**_kwargs): | def read_dataframe_from_table(**_kwargs): | ||||
pass | pass | ||||
@solid(input_defs=[InputDefinition("dataframe", root_manager_key="my_root_manager")]) | @solid( | ||||
input_defs=[ | |||||
InputDefinition("dataframe", root_manager_key="my_root_manager") | |||||
] | |||||
) | |||||
def my_solid(dataframe): | def my_solid(dataframe): | ||||
"""Do some stuff""" | """Do some stuff""" | ||||
# def_start_marker | # def_start_marker | ||||
@root_input_manager(input_config_schema={"table_name": str}) | @root_input_manager(input_config_schema={"table_name": str}) | ||||
def table_loader(context): | def table_loader(context): | ||||
return read_dataframe_from_table(name=context.config["table_name"]) | return read_dataframe_from_table(name=context.config["table_name"]) | ||||
# def_end_marker | # def_end_marker | ||||
def execute_with_config(): | def execute_with_config(): | ||||
# execute_start_marker | # execute_start_marker | ||||
@pipeline(mode_defs=[ModeDefinition(resource_defs={"my_root_manager": table_loader})]) | @pipeline( | ||||
mode_defs=[ | |||||
ModeDefinition(resource_defs={"my_root_manager": table_loader}) | |||||
] | |||||
) | |||||
def my_pipeline(): | def my_pipeline(): | ||||
my_solid() | my_solid() | ||||
execute_pipeline( | execute_pipeline( | ||||
my_pipeline, | my_pipeline, | ||||
run_config={"solids": {"my_solid": {"inputs": {"dataframe": {"table_name": "table1"}}}}}, | run_config={ | ||||
"solids": { | |||||
"my_solid": { | |||||
"inputs": {"dataframe": {"table_name": "table1"}} | |||||
} | |||||
} | |||||
}, | |||||
) | ) | ||||
# execute_end_marker | # execute_end_marker |