Skip to content

Commit b40ad46

Browse files
Replace BaseHook to Task SDK for opensearch (#52851)
1 parent f78f829 commit b40ad46

File tree

3 files changed

+12
-11
lines changed

3 files changed

+12
-11
lines changed

providers/opensearch/src/airflow/providers/opensearch/hooks/opensearch.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,7 @@
2727
from opensearchpy import Connection as OpenSearchConnectionClass
2828

2929
from airflow.exceptions import AirflowException
30-
31-
try:
32-
from airflow.sdk import BaseHook
33-
except ImportError:
34-
from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
30+
from airflow.providers.opensearch.version_compat import BaseHook
3531
from airflow.utils.strings import to_boolean
3632

3733

providers/opensearch/src/airflow/providers/opensearch/version_compat.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,23 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
3232
return airflow_version.major, airflow_version.minor, airflow_version.micro
3333

3434

35-
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
35+
AIRFLOW_V_3_0_PLUS: bool = get_base_airflow_version_tuple() >= (3, 0, 0)
36+
AIRFLOW_V_3_1_PLUS: bool = get_base_airflow_version_tuple() >= (3, 1, 0)
3637

3738
if AIRFLOW_V_3_0_PLUS:
3839
from airflow.sdk import BaseOperator
3940
else:
4041
from airflow.models import BaseOperator
4142

43+
if AIRFLOW_V_3_1_PLUS:
44+
from airflow.sdk import BaseHook
45+
else:
46+
from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
47+
48+
4249
__all__ = [
4350
"AIRFLOW_V_3_0_PLUS",
51+
"AIRFLOW_V_3_1_PLUS",
52+
"BaseHook",
4453
"BaseOperator",
4554
]

providers/opensearch/tests/unit/opensearch/conftest.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,7 @@
2121
import pytest
2222

2323
from airflow.models import Connection
24-
25-
try:
26-
from airflow.sdk import BaseHook
27-
except ImportError:
28-
from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
24+
from airflow.providers.opensearch.version_compat import BaseHook
2925

3026
try:
3127
from opensearchpy import OpenSearch

0 commit comments

Comments
 (0)