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

License

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

Comments