Stonebranch

Stonebranch Universal Automation Center → Apache Airflow

Migrate Stonebranch UAC task definitions, workflows, and triggers to Apache Airflow DAGs.

Stonebranch Universal Automation Center (UAC) is a modern, API-first workload automation platform used widely in hybrid and cloud environments. Its task definitions, composite workflows, and trigger model map well to Airflow. BatchFoundry uses the Stonebranch REST API to extract the full task catalog and generates Airflow DAGs that preserve workflow structure, dependencies, and scheduling intent.

Concept Mapping

Task definitionTask / Operator
Composite workflowDAG
Workflow task stepTask in DAG
Step dependencyTask dependency (>>)
Time triggerschedule_interval
File monitor triggerFileSensor / S3KeySensor
Variable (UAC variable)Airflow Variable / Param
AgentAirflow worker queue
On-failure actionon_failure_callback
CredentialsAirflow Connection

The Hard Parts We Handle

  • Stonebranch REST API task catalog extraction
  • Composite workflow nesting → TaskGroup hierarchy
  • File monitor triggers → FileSensor / S3KeySensor
  • UAC credential objects → Airflow Connections
  • Cross-workflow dependencies → ExternalTaskSensor
  • Agent capability tags → Airflow worker pool routing

Stonebranch composite workflow to DAG

Before

/* Stonebranch Composite Workflow (simplified) */
{
  "name": "DAILY_ETL",
  "trigger": { "type": "time", "cron": "0 1 * * MON-FRI" },
  "tasks": [
    { "name": "EXTRACT", "type": "Linux/Unix Task", "command": "/opt/etl/extract.sh" },
    { "name": "LOAD",    "type": "Linux/Unix Task", "command": "/opt/etl/load.sh",
      "depends": [{ "task": "EXTRACT", "condition": "Success" }] }
  ]
}

After (Airflow)

# Apache Airflow DAG
from airflow.decorators import dag
from airflow.operators.bash import BashOperator
from pendulum import datetime

@dag(schedule="0 1 * * 1-5", start_date=datetime(2025,1,1), catchup=False)
def daily_etl():
    extract = BashOperator(task_id="extract", bash_command="/opt/etl/extract.sh")
    load = BashOperator(task_id="load", bash_command="/opt/etl/load.sh")
    extract >> load

daily_etl()

Ready to migrate from Stonebranch Universal Automation Center?

Talk to a BatchFoundry engineer about your workload estate.

Talk to an Engineer

Related Migrations