Differential D8684 Diff 40813 examples/docs_snippets/docs_snippets/concepts/io_management/load_custom_type_from_config.py
Changeset View
Changeset View
Standalone View
Standalone View
examples/docs_snippets/docs_snippets/concepts/io_management/load_custom_type_from_config.py
from dagster import ( | from dagster import ( | ||||
InputDefinition, | InputDefinition, | ||||
dagster_type_loader, | dagster_type_loader, | ||||
execute_pipeline, | execute_pipeline, | ||||
pipeline, | pipeline, | ||||
solid, | solid, | ||||
usable_as_dagster_type, | usable_as_dagster_type, | ||||
) | ) | ||||
# def_start_marker | # def_start_marker | ||||
@dagster_type_loader(config_schema={"diameter": float, "juiciness": float, "cultivar": str}) | @dagster_type_loader( | ||||
config_schema={"diameter": float, "juiciness": float, "cultivar": str} | |||||
) | |||||
def apple_loader(_context, config): | def apple_loader(_context, config): | ||||
return Apple( | return Apple( | ||||
diameter=config["diameter"], juiciness=config["juiciness"], cultivar=config["cultivar"] | diameter=config["diameter"], | ||||
juiciness=config["juiciness"], | |||||
cultivar=config["cultivar"], | |||||
) | ) | ||||
@usable_as_dagster_type(loader=apple_loader) | @usable_as_dagster_type(loader=apple_loader) | ||||
class Apple: | class Apple: | ||||
def __init__(self, diameter, juiciness, cultivar): | def __init__(self, diameter, juiciness, cultivar): | ||||
self.diameter = diameter | self.diameter = diameter | ||||
self.juiciness = juiciness | self.juiciness = juiciness | ||||
Show All 16 Lines | |||||
def execute_with_config(): | def execute_with_config(): | ||||
# execute_start_marker | # execute_start_marker | ||||
execute_pipeline( | execute_pipeline( | ||||
my_pipeline, | my_pipeline, | ||||
run_config={ | run_config={ | ||||
"solids": { | "solids": { | ||||
"my_solid": { | "my_solid": { | ||||
"inputs": { | "inputs": { | ||||
"input_apple": {"diameter": 2.4, "juiciness": 6.0, "cultivar": "honeycrisp"} | "input_apple": { | ||||
"diameter": 2.4, | |||||
"juiciness": 6.0, | |||||
"cultivar": "honeycrisp", | |||||
} | |||||
} | } | ||||
} | } | ||||
} | } | ||||
}, | }, | ||||
) | ) | ||||
# execute_end_marker | # execute_end_marker |