Skip to main content

Configuration based Apache Airflow

Project description

awehflow

coverage report pipeline status

awehflow is a configuration-driven framework for Apache Airflow that dynamically generates DAGs from simple HOCON or YAML files. It comes with built-in metrics, logging, and alerting to streamline your data orchestration.

Core Concepts

  • Configuration-Driven: Define complex DAGs using a clear, hierarchical configuration. No need to write repetitive Python code for each pipeline.
  • Dynamic DAG Generation: awehflow automatically constructs and orchestrates Airflow DAGs based on your configurations.
  • Built-in Observability: Comes with out-of-the-box event handlers for persisting metrics to a database and alerters for notifications on pipeline status.
  • Extensible: Easily add your own custom event handlers and alerters to integrate with any service.

Getting Started

Configuration Reference

Custom Operators and Sensors

awehflow includes a collection of custom operators and sensors to extend Airflow's functionality. While these custom operators provide specialized capabilities, awehflow is fully compatible with all standard Airflow operators. You can use any operator available in your Airflow environment by referencing its fully qualified class name in your configuration.

Command-Line Interface (CLI)

awehflow includes a CLI for generating and validating configurations.

Advanced Features

Event Handlers & Alerters

awehflow has a built-in event system that allows you to run custom code in response to pipeline events. Alerters are a special type of event handler designed for sending notifications.

  • Alerts Guide: A detailed guide on how to configure and use alerters.

Troubleshooting

For Developers

Development Environment Setup

To contribute to awehflow, follow these steps to set up a development environment for a specific Airflow version.

  1. Install Miniconda: Follow the official instructions.
  2. Create Conda Environment (x86 on Mac ARM): If you are on an ARM-based Mac, create an x86-emulated environment. Add this function to your `.zsh

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awehflow-4.0.5.tar.gz (40.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

awehflow-4.0.5-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file awehflow-4.0.5.tar.gz.

File metadata

  • Download URL: awehflow-4.0.5.tar.gz
  • Upload date:
  • Size: 40.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for awehflow-4.0.5.tar.gz
Algorithm Hash digest
SHA256 019a5cba97330bc1299e8f8060feca475274af6a7455e9d5c2b7401b1472de88
MD5 3b5fb2987111d39b8f381253a18840c9
BLAKE2b-256 c59433f8ad0b3f15af93c83a9ff3f66757cfc7d645de2da14e1be13d3ce20d78

See more details on using hashes here.

File details

Details for the file awehflow-4.0.5-py3-none-any.whl.

File metadata

  • Download URL: awehflow-4.0.5-py3-none-any.whl
  • Upload date:
  • Size: 43.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for awehflow-4.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f6b53a08fd94bc278bbdf161af6bc4f703e4e8a853b8ed6cbfe7fa8e729f3173
MD5 978a4be334b80f05d6968cec7c6642e3
BLAKE2b-256 f49a00a79dc50f73a73f21757502d000f45033486435c149e7d3fa248d1471f2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page