Daniel Olausson
04/23/2020, 11:12 AMpipenv run dagster pipeline execute -n ...
), running the same command locally works fine but in the jenkins job all the INFO messages are missing, and so is the rest of stdout/stderr from other printouts etc.max
04/23/2020, 4:30 PMDaniel Olausson
04/23/2020, 7:48 PMENGINE_EVENT
with e.g. Launching subprocess
and Starting initialization
max
04/23/2020, 8:22 PMnate
04/24/2020, 12:34 AMDaniel Olausson
04/24/2020, 7:24 AMmax
04/24/2020, 4:51 PMdef solid_factory(name):
@solid(required_resource_keys={"my_mode"})
def chatty_solid(context):
<http://context.resources.my|context.resources.my>_mode.do_the_thing(context)
return chatty_solid.alias(name)
Daniel Olausson
04/28/2020, 7:53 AMdef task(name):
def fn(*inputs):
input_map = {f'{i.solid_name}': i for i in inputs}
input_defs = [
InputDefinition(name=input_name, dagster_type=Optional[Bool], default_value=None)
for input_name in input_map.keys()
] if inputs else None
@solid(name=name,
input_defs=input_defs or [InputDefinition('start', Nothing)],
output_defs=[OutputDefinition(name='out0', dagster_type=Bool)]
)
def _x_solid(context, **_ins) -> Bool:
# do stuff
pass
return _x_solid.alias(name)() if not inputs else _x_solid.alias(name)(**input_map)
return fn
We do this so that we can do e.g. this:
a = task('a')
b = task('b')
c = task('c')
d = task('d')
# etc..
a_out = a()
b_out = b()
c_out = c(a_out, b_out)
d_out = d(a_out, c_out)
max
04/28/2020, 4:42 PMSolidDefinition
API directly rather than the @solid
decoratorDaniel Olausson
04/28/2020, 5:07 PMmax
04/28/2020, 5:24 PM