Skip to content

Activity Base

Shared building blocks used by every typed activity.

fabric_data_pipelines.Activity

Bases: FabricModel

Base class for all Fabric pipeline activities.

Subclasses declare a class-level activity_type and any fields that belong in typeProperties. Serialization automatically splits envelope fields (name, dependsOn, policy, …) from type-specific fields.

Example::

from fabric_data_pipelines import Wait

wait = Wait(name="pause", wait_time_in_seconds=30)
wait.to_dict()

then

then(
    activity: A, on: DependencyCondition = "Succeeded"
) -> A

Chain activity to run after this one.

Returns activity so further chaining is possible::

lookup.then(copy).then(notebook)

Parameters:

Name Type Description Default
activity A

The downstream activity.

required
on DependencyCondition

Dependency condition. One of Succeeded (default), Failed, Completed, Skipped.

'Succeeded'

after

after(
    *activities: Activity,
    on: DependencyCondition = "Succeeded",
) -> A

Make this activity depend on one or more upstream activities (fan-in).

Example::

join.after(copy_a, copy_b)

to_dict

to_dict() -> dict[str, Any]

Serialize this activity to a Fabric-compatible dict.

fabric_data_pipelines.ActivityDependency

Bases: FabricModel

A single entry in an activity's dependsOn array.

Example::

ActivityDependency(activity="lookup", dependency_conditions=["Succeeded"])

fabric_data_pipelines.DependencyCondition module-attribute

DependencyCondition = Literal[
    "Succeeded", "Failed", "Completed", "Skipped"
]

fabric_data_pipelines.ActivityPolicy

Bases: FabricModel

Execution policy matching Fabric UI defaults.

Defaults mirror what the Fabric UI writes into exported JSON so generated pipelines round-trip without noisy diffs.

Example::

ActivityPolicy()  # timeout 0.12:00:00, retry 0, ...
ActivityPolicy(timeout="1.00:00:00", retry=3)

fabric_data_pipelines.SecureInputOutputPolicy

Bases: FabricModel

Minimal policy used by ExecutePipeline and SetVariable activities.

fabric_data_pipelines.ExternalReferences

Bases: FabricModel

Reference to a Fabric connection.

connection may be a GUID or an expression such as @pipeline().libraryVariables.MyConnection.

Example::

ExternalReferences(connection="00000000-0000-0000-0000-000000000005")
ExternalReferences(connection=expr.library_variable("MyConn"))