DJ Erraballi
11/09/2020, 7:21 PMTask A:
run(self, x, y):
Task B:
run(self, a_result, x, y):
with Flow() as flow:
x_parameter = Parameter("x", required=True)
y_parameter = Parameter("y", required=True)
# question is how do setup the parameter pasing from teh parameters -> A -> B
# my attempt but still dont know how to keyword_tasks in this scenario to pass along results from A
flow.add_task(x_parameter)
flow.add_task(y_parameter)
a = A()
flow.set_dependencies(a , upstream_tasks=[x_parameter, y_parameter], keyword_tasks=??? )
flow.set_dependencies(B(), upstream_tasks=[a, x_parameter, y_parameter], keyword_tasks=????)
Kyle Moon-Wright
11/09/2020, 7:47 PMkeyword_tasks
kwarg and pass the data between tasks. Here's an example of using the kwarg in which the arg for my TaskB
is set to the result of my TaskA
instance:
from random import randrange
from prefect import Task, Flow
class TaskA(Task):
def run(self):
return randrange(1, 100)
class TaskB(Task):
def run(self, data):
return data * 10
a = TaskA()
b = TaskB()
flow = Flow("Example Flow")
flow.set_dependencies(b, keyword_tasks={'data': a})
flow.run()
DJ Erraballi
11/09/2020, 7:48 PMDJ Erraballi
11/09/2020, 7:50 PMKyle Moon-Wright
11/09/2020, 7:54 PMDJ Erraballi
11/10/2020, 6:18 PM