Skip to content

Python Orchestration
Powered by Argo Workflows

Hera mascot

What is Hera?

Hera is the go-to Python SDK to make Argo Workflows simple and intuitive. Easily turn Python functions into containerised templates that run on Kubernetes, with full access to its capabilities.

Why Hera?

Python-First – Write native Python (with all your favourite libraries!)
Lightweight & Unintrusive – Keep orchestration logic out of your functions
Built on Argo Workflows – All the power of Kubernetes, with the simplicity of Python

The Basics

Install with your favourite package manager:

pip install hera

Use the @script decorator on your functions, and arrange them in a DAG. Create a DAG in a Workflow to submit it to Argo!

from hera.workflows import DAG, Workflow, script


@script()
def echo(message: str):
    print(message)


with Workflow(
    generate_name="dag-diamond-",
    entrypoint="diamond",
) as w:
    with DAG(name="diamond"):
        A = echo(name="A", arguments={"message": "A"})
        B = echo(name="B", arguments={"message": "B"})
        C = echo(name="C", arguments={"message": "C"})
        D = echo(name="D", arguments={"message": "D"})
        A >> [B, C] >> D  # Define execution order

w.create()

Check out the Quick Start for more!

Community Presentations

More presentations

Community Blogs

More blogs

License

Hera is licensed under Apache 2.0. See License for details.

Comments