This is an automated email from the ASF dual-hosted git repository.

mobuchowski pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new fca1c3020ed revert removing `external_trigger` from OpenLineage 
provider (#47383)
fca1c3020ed is described below

commit fca1c3020edb82798ff72014158072c3676ea306
Author: Kacper Muda <[email protected]>
AuthorDate: Thu Mar 6 10:22:32 2025 +0100

    revert removing `external_trigger` from OpenLineage provider (#47383)
---
 .../src/airflow/providers/openlineage/facets/AirflowDagRunFacet.json   | 3 +++
 .../src/airflow/providers/openlineage/facets/AirflowRunFacet.json      | 3 +++
 providers/openlineage/src/airflow/providers/openlineage/utils/utils.py | 1 +
 providers/openlineage/tests/unit/openlineage/plugins/test_adapter.py   | 2 ++
 providers/openlineage/tests/unit/openlineage/utils/test_utils.py       | 2 ++
 5 files changed, 11 insertions(+)

diff --git 
a/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowDagRunFacet.json
 
b/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowDagRunFacet.json
index c3a83b216ca..165a8e6a598 100644
--- 
a/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowDagRunFacet.json
+++ 
b/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowDagRunFacet.json
@@ -75,6 +75,9 @@
           "type": "string",
           "format": "date-time"
         },
+        "external_trigger": {
+          "type": "boolean"
+        },
         "run_id": {
           "type": "string"
         },
diff --git 
a/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowRunFacet.json
 
b/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowRunFacet.json
index 338ae3ce55b..621eb6a7614 100644
--- 
a/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowRunFacet.json
+++ 
b/providers/openlineage/src/airflow/providers/openlineage/facets/AirflowRunFacet.json
@@ -235,6 +235,9 @@
           "type": "string",
           "format": "date-time"
         },
+        "external_trigger": {
+          "type": "boolean"
+        },
         "run_id": {
           "type": "string"
         },
diff --git 
a/providers/openlineage/src/airflow/providers/openlineage/utils/utils.py 
b/providers/openlineage/src/airflow/providers/openlineage/utils/utils.py
index 169e6c6b473..c6dd4a2a2b3 100644
--- a/providers/openlineage/src/airflow/providers/openlineage/utils/utils.py
+++ b/providers/openlineage/src/airflow/providers/openlineage/utils/utils.py
@@ -365,6 +365,7 @@ class DagRunInfo(InfoJsonEncodable):
         "dag_id",
         "data_interval_start",
         "data_interval_end",
+        "external_trigger",  # Removed in Airflow 3, use run_type instead
         "run_id",
         "run_type",
         "start_date",
diff --git 
a/providers/openlineage/tests/unit/openlineage/plugins/test_adapter.py 
b/providers/openlineage/tests/unit/openlineage/plugins/test_adapter.py
index f98f445243d..48dfaacd116 100644
--- a/providers/openlineage/tests/unit/openlineage/plugins/test_adapter.py
+++ b/providers/openlineage/tests/unit/openlineage/plugins/test_adapter.py
@@ -606,6 +606,7 @@ def test_emit_dag_started_event(mock_stats_incr, 
mock_stats_timer, generate_stat
             "dag_id": "dag_id",
             "data_interval_start": event_time.isoformat(),
             "data_interval_end": event_time.isoformat(),
+            "external_trigger": False if AIRFLOW_V_3_0_PLUS else None,
             "run_id": run_id,
             "run_type": DagRunType.MANUAL,
             "start_date": event_time.isoformat(),
@@ -646,6 +647,7 @@ def test_emit_dag_started_event(mock_stats_incr, 
mock_stats_timer, generate_stat
                             "dag_id": "dag_id",
                             "data_interval_start": event_time.isoformat(),
                             "data_interval_end": event_time.isoformat(),
+                            "external_trigger": False if AIRFLOW_V_3_0_PLUS 
else None,
                             "run_id": run_id,
                             "run_type": DagRunType.MANUAL,
                             "start_date": event_time.isoformat(),
diff --git a/providers/openlineage/tests/unit/openlineage/utils/test_utils.py 
b/providers/openlineage/tests/unit/openlineage/utils/test_utils.py
index 6dd4645b003..e1da5438ad5 100644
--- a/providers/openlineage/tests/unit/openlineage/utils/test_utils.py
+++ b/providers/openlineage/tests/unit/openlineage/utils/test_utils.py
@@ -129,6 +129,7 @@ def test_get_airflow_dag_run_facet():
     dagrun_mock.dag_id = dag.dag_id
     dagrun_mock.data_interval_start = datetime.datetime(2024, 6, 1, 1, 2, 3, 
tzinfo=datetime.timezone.utc)
     dagrun_mock.data_interval_end = datetime.datetime(2024, 6, 1, 2, 3, 4, 
tzinfo=datetime.timezone.utc)
+    dagrun_mock.external_trigger = True
     dagrun_mock.run_id = "manual_2024-06-01T00:00:00+00:00"
     dagrun_mock.run_type = DagRunType.MANUAL
     dagrun_mock.start_date = datetime.datetime(2024, 6, 1, 1, 2, 4, 
tzinfo=datetime.timezone.utc)
@@ -156,6 +157,7 @@ def test_get_airflow_dag_run_facet():
                 "dag_id": "dag",
                 "data_interval_start": "2024-06-01T01:02:03+00:00",
                 "data_interval_end": "2024-06-01T02:03:04+00:00",
+                "external_trigger": True,
                 "run_id": "manual_2024-06-01T00:00:00+00:00",
                 "run_type": "manual",
                 "start_date": "2024-06-01T01:02:04+00:00",

Reply via email to