Contents

Chapter 1

Features

This chapter covers the core features and capabilities of Workflow Engine.

Features

  • DAG execution — Tasks execute in dependency order with automatic parallelism
  • Conditional branching — Skip tasks based on Python expressions
  • Parallel execution — Tasks without dependencies run concurrently via thread pool
  • State persistence — Save and resume workflows after failures
  • Retry policies — Per-task retry limits with configurable backoff
  • DAG validation — Detects cycles and missing dependencies before execution
  • Completion hooks — Run commands on workflow success or failure
  • Dry-run mode — Preview execution plan without running anything
  • Context passing — Upstream task output available to downstream tasks via env vars

Requirements

  • Python 3.10+
  • No external dependencies (stdlib only)
Chapter 2

Quick Start

Follow this guide to get Workflow Engine up and running in your environment.

Quick Start

bash
# Run a workflow
python src/workflow_engine.py --config examples/workflow_config.json

# Preview execution plan
python src/workflow_engine.py --config examples/workflow_config.json --dry-run

# Resume a failed workflow
python src/workflow_engine.py --config examples/workflow_config.json --resume workflow_state.json

Configuration Reference

json
{
    "name": "my-pipeline",
    "max_workers": 4,
    "tasks": [
        {
            "name": "build",
            "command": "make build",
            "depends_on": ["lint", "test"],
            "condition": "",
            "retry_limit": 2,
            "timeout": 300
        }
    ],
    "on_complete": "echo 'Done!'",
    "on_failure": "curl https://hooks.example.com/alert"
}
FieldTypeDefaultDescription
namestring"unnamed"Workflow identifier
max_workersint4Max parallel task threads
tasks[].namestringrequiredUnique task name
tasks[].commandstringrequiredShell command to run
tasks[].depends_onlist[]Task names this depends on
tasks[].conditionstring""Python expression for conditional execution
tasks[].retry_limitint2Max retry attempts
tasks[].timeoutint300Max seconds before timeout
Chapter 3
🔒 Available in full product

License

You’ve reached the end of the free preview

Get the full Workflow Engine and unlock everything.

All Chapters

Get the complete guide with every chapter unlocked, including code samples, diagrams, and best practices.

Full Tool Suite

Access all interactive tools with complete data, all workload profiles, and the full scenario library.

Source Files

Downloadable source code, configuration files, and working examples from every chapter.

Lifetime Updates

Free updates for life. Every new chapter, tool, and improvement included.

Buy Now — $29 →
📦 Free sample included — download another copy for the full product.
Workflow Engine v1.0.0 — Free Preview