Florian Guily
06/09/2022, 1:49 PMfrom asyncio.log import logger
import prefect, pymongo, datetime
from prefect import task, Flow, flatten
from prefect.tasks.secrets import PrefectSecret
from prefect.tasks.mysql.mysql import MySQLFetch
from prefect.storage import GitHub
@task(nout= 3)
def produce_output(input):
return input*2-1, input*2, ["val"+str(input*2-1), "val"+str(input*2)]
@task
def reduce(a):
return sum(a)
@task
def retry_post(data):
logger = prefect.context.get("logger")
<http://logger.info|logger.info>(data)
with Flow("abcdef") as flow:
success, fail, to_retry = produce_output.map([1, 2, 3, 4])
total_success = reduce(success)
total_fail = reduce(fail)
retry_post.map(flatten(to_retry))
flow.run()
Anna Geller
06/09/2022, 1:52 PM@task
def produce_output(input):
return [input*2-1, input*2, ["val"+str(input*2-1), "val"+str(input*2)]]
Florian Guily
06/09/2022, 1:52 PM