Skip to main content

Orchestration-pipelines

PyPI version Python Versions Support Status License

A library for defining and generating Apache Airflow DAGs declaratively using YAML. Currently focused on orchestration of GCP resources (Dataproc, BigQuery, Dataform) and DBT...

Overview

orchestration-pipelines allows you to define complex data workflows in simple, human-readable YAML files. It abstracts away the boilerplate of writing Airflow DAGs in Python, making it easier for non-Python experts to create and manage pipelines.

Supported Python Versions

Python >= 3.10

Features

  • Declarative DAGs: Define your pipeline structure, triggers, and actions in YAML.
  • Rich Actions Support: Built-in support for:
    • Python Scripts
    • Google Cloud BigQuery
    • Google Cloud Dataproc (Serverless, Ephemeral and existing clusters)
    • Google Cloud Dataform
    • DBT
  • Automatic Generation: A simple Python call generates the full Airflow DAG.
  • Versioning: Supports versioning of pipelines via a manifest file(as of Preview, on Google Cloud Composer).

Installation

You can install orchestration-pipelines from PyPI:

pip install orchestration-pipelines

Quick Start

1. Define your pipeline in YAML

Create a file named my_pipeline.yml:

modelVersion: "1.0"
pipelineId: "my_pipeline"
description: "A simple example pipeline"
runner: "airflow"

defaults:
  projectId: "your-gcp-project"
  location: "us-central1"

triggers:
  - schedule:
      interval: "0 4 * * *"
      startTime: "2026-01-01T00:00:00"
      catchup: false

actions:
  - sql:
      name: "create_table"
      query:
        inline: "CREATE TABLE IF NOT EXISTS `your-gcp-project.my_dataset.my_table` (id INT64, name STRING);"
      engine:
        bigquery:
          location: "US"

Known Limitations

See docs/limitations.md for the complete list of known limitations and compatibility constraints.

2. Generate the Airflow DAG

Create a Python file named my_pipeline.py in your Airflow DAGs folder:

from orchestration_pipelines_lib.api import generate

# Generate Airflow DAG from pipeline definition file
# airflow | dag
# Root is "dags" directory in Composer bucket
generate("dataform-pipeline-local.yml")

Airflow will parse this Python file and automatically generate the DAG based on your YAML definition.

Advanced Features

Versioning and Manifests

You can manage multiple versions of your pipelines using a manifest.yml file. This allows you to specify which version of a pipeline should be active.

See the examples/ directory for a sample manifest.yml and how to use it.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Metadata

Release files for orchestration-pipelines 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for orchestration-pipelines 1.2.1
File Size Uploaded
orchestration_pipelines-1.2.1.tar.gz 74.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for orchestration-pipelines 1.2.1
File Interpreter ABI Platform
orchestration_pipelines-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 187.6 kB

Release files / orchestration_pipelines-1.2.1.tar.gz

Download URL orchestration_pipelines-1.2.1.tar.gz
Size 74.4 kB
Tags Source
SHA-256 checksum
How to use checksums
57c3da65287530f47025f73f6a4f3080c958e1222c68f79a8a78f5a9274924ec
BLAKE2b-256 checksum
How to use checksums
14c91105571323eda8aec0d9e8036b2be95bcf7a5143d21f2946a8352c422b0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.2.0 CPython/3.11.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by Google Cloud, verified by PyPI on Oct 12, 2026.

Transparency log

Release files / orchestration_pipelines-1.2.1-py3-none-any.whl

Download URL orchestration_pipelines-1.2.1-py3-none-any.whl
Size 113.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b08e13bbaf71bcdba630121661386ffbc0ccd3b2c78c363be8fe1ba5d2475e8f
BLAKE2b-256 checksum
How to use checksums
95f459fb329c6f2f944476e22a6e67c9a0caf96030202ba317b3becfea30f740
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.2.0 CPython/3.11.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by Google Cloud, verified by PyPI on Oct 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.1 This release

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page