# Edge


# Edge

class

prefect.core.edge.Edge

(upstream_task, downstream_task, key=None, mapped=None, flattened=None, flow=None)[source]

Edges represent connections between Tasks.

At a minimum, an edge links an upstream_task and a downstream_task indicating that the downstream task shouldn't attempt to run until the upstream task is complete.

In addition, edges can specify a key that describe how upstream results are passed to the downstream task.

Args:

  • upstream_task (Any): the task that must run before the downstream_task. It will be converted to as task with prefect.utilities.tasks.as_task()
  • downstream_task (Any): the task that will be run after the upstream_task. The upstream task state is passed to the downstream task's trigger function to determine whether the downstream task should run. It will be converted to as task with prefect.utilities.tasks.as_task()
  • key (str, optional): Passing a key indicates that the upstream result should be passed to the downstream task as a keyword argument given by key.
  • mapped (bool, optional): boolean indicating whether this edge represents a downstream mapped task; defaults to False
  • flattened (bool, optional): boolean indicating whether this edge represents an upstream flattened task; defaults to False </li><li class="args">flow (prefect.Flow, optional): a flow object that will be used if either theupstream_taskordownstream_task` is a collection that needs to be bound to a flow. If not provided, the context flow will be used instead.
The key indicates that the result of the upstream task should be passed to the downstream task under the key.

In general, Edges are created and handled in the background by the Flow class and will not be directly instantiated by users.

Example:

    from prefect import *
    from prefect.core import Edge

    class Add(Task):
        def run(self, x):
            return x + 1

    class Number(Task):
        def run(self):
            return 2

    # passes the result of the Number() task to Add() as 'x'
    edge = Edge(Number(), Add(), key='x')

methods:                                                                                                                                                       

prefect.core.edge.Edge.serialize

()[source]

Represents the Edge as a dict.



This documentation was auto-generated from commit ffa9a6c
on February 1, 2023 at 18:44 UTC