diff --git a/providers/opensearch/src/airflow/providers/opensearch/operators/opensearch.py b/providers/opensearch/src/airflow/providers/opensearch/operators/opensearch.py index 9174e03b36936..3391df3f59dd3 100644 --- a/providers/opensearch/src/airflow/providers/opensearch/operators/opensearch.py +++ b/providers/opensearch/src/airflow/providers/opensearch/operators/opensearch.py @@ -25,8 +25,8 @@ from opensearchpy.exceptions import OpenSearchException from airflow.exceptions import AirflowException -from airflow.models import BaseOperator from airflow.providers.opensearch.hooks.opensearch import OpenSearchHook +from airflow.providers.opensearch.version_compat import BaseOperator if TYPE_CHECKING: from opensearchpy import Connection as OpenSearchConnectionClass diff --git a/providers/opensearch/src/airflow/providers/opensearch/version_compat.py b/providers/opensearch/src/airflow/providers/opensearch/version_compat.py index 48d122b669696..e7a259afb357c 100644 --- a/providers/opensearch/src/airflow/providers/opensearch/version_compat.py +++ b/providers/opensearch/src/airflow/providers/opensearch/version_compat.py @@ -33,3 +33,13 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]: AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0) + +if AIRFLOW_V_3_0_PLUS: + from airflow.sdk import BaseOperator +else: + from airflow.models import BaseOperator + +__all__ = [ + "AIRFLOW_V_3_0_PLUS", + "BaseOperator", +]