• Stars
    star
    248
  • Rank 163,075 (Top 4 %)
  • Language
    Python
  • License
    Apache License 2.0
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Auto-generated Diagrams from Airflow DAGs. 🔮 đŸĒ„

airflow-diagrams

pre-commit.ci status test workflow codeql-analysis workflow codecov PyPI version License PyPI - Python Version PyPI version

Auto-generated Diagrams from Airflow DAGs. 🔮 đŸĒ„

This project aims to easily visualise your Airflow DAGs on service level from providers like AWS, GCP, Azure, etc. via diagrams.

demo

Before After
dag diagram

🚀 Get started

To install it from PyPI run:

pip install airflow-diagrams

NOTE: Make sure you have Graphviz installed.

Then just call it like this:

usage

Examples of generated diagrams can be found in the examples directory.

🤔 How it Works

  1. ℹī¸ It connects, by using the official Apache Airflow Python Client, to your Airflow installation to retrieve all DAGs (in case you don't specify any dag_id) and all Tasks for the DAG(s).
  2. đŸĒ„ It processes every DAG and its Tasks and 🔮 tries to find a diagram node for every DAGs task, by using Fuzzy String Matching, that matches the most. If you are unhappy about the match you can also provide a mapping.yml file to statically map from Airflow task to diagram node.
  3. 🎨 It renders the results into a python file which can then be executed to retrieve the rendered diagram. 🎉

❤ī¸ Contributing

Contributions are very welcome. Please go ahead and raise an issue if you have one or open a PR. Thank you.