Skip to content

Commit 1f192bd

Browse files
authored
Add Deadline relationship to DagRun and update Deadline model (apache#50925)
* Add Deadline relationship to DagRun and update Deadline model * Refactor Deadline relationship in DagRun and Deadline models * add test * call it deadlines * remove test
1 parent f3ced9a commit 1f192bd

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

airflow-core/src/airflow/models/dagrun.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,13 @@ class DagRun(Base, LoggingMixin):
256256
cascade="all, delete, delete-orphan",
257257
)
258258

259+
deadlines = relationship(
260+
"Deadline",
261+
back_populates="dagrun",
262+
uselist=True,
263+
cascade="all, delete, delete-orphan",
264+
)
265+
259266
created_dag_version = relationship("DagVersion", uselist=False, passive_deletes=True)
260267
"""
261268
The dag version that was active when the dag run was created, if available.

airflow-core/src/airflow/models/deadline.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import sqlalchemy_jsonfield
2525
import uuid6
2626
from sqlalchemy import Column, ForeignKey, Index, Integer, String
27+
from sqlalchemy.orm import relationship
2728
from sqlalchemy_utils import UUIDType
2829

2930
from airflow.models.base import Base, StringID
@@ -56,6 +57,8 @@ class Deadline(Base):
5657
# Serialized kwargs to pass to the callback.
5758
callback_kwargs = Column(sqlalchemy_jsonfield.JSONField(json=json))
5859

60+
dagrun = relationship("DagRun", back_populates="deadlines")
61+
5962
__table_args__ = (Index("deadline_idx", deadline, unique=False),)
6063

6164
def __init__(

0 commit comments

Comments
 (0)