Airflow 3’s Deadline Alerts let you set “need-by” times on Dags and fire callbacks when deadlines are missed. The built-in references cover common cases, but the real power is the feature’s extensibility. In this workshop, led by the feature’s author, we will go beyond the basics and explore these more advanced features. We start with an overview of how DeadlineAlert, DeadlineReference, and Callback fit together, and how the scheduler detects misses. Then, a guided project: coding our own Callback implementation and building custom DeadlineReference classes using the @deadline_reference decorator, implementing _evaluate_with(), and serialization. We wrap up with a hackathon-style “competition” to build the most creative WORKING DeadlineReference (business hours, the last time it didn’t rain in Vancouver, the moon phases, the last time the Leafs won the cup… anything goes, as long as it serializes and returns a valid datetime). BONUS! Your hackathon “projects” would make a great lightning talk topic!

PLEASE COME PREPARED:

This is a hands-on session, and conference wifi will likely not support everyone installing Airflow at once. Please arrive with a working Airflow 3.3.0 or newer environment. Setup instructions and verification steps: https://github.com/ferruzzi/deadline-alerts-workshop Can’t get set up? Come anyway! We will try to pair people up, and the repo includes a(n admittedly less exciting) path that needs only Python 3.10+.

Dennis Ferruzzi

OSS Developer - AWS