This is an automated email from the ASF dual-hosted git repository.
vincbeck 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 e565cea65c Resolving EMR deprecated warnings (#39743)
e565cea65c is described below
commit e565cea65cb42e43387aa7fd135ac46e8ac25f65
Author: Gopal Dirisala <[email protected]>
AuthorDate: Thu May 23 19:30:57 2024 +0530
Resolving EMR deprecated warnings (#39743)
---
airflow/providers/amazon/aws/operators/emr.py | 24 +++++++++++++-----------
tests/always/test_example_dags.py | 1 -
2 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/airflow/providers/amazon/aws/operators/emr.py
b/airflow/providers/amazon/aws/operators/emr.py
index 1a4518af70..664d4b6d84 100644
--- a/airflow/providers/amazon/aws/operators/emr.py
+++ b/airflow/providers/amazon/aws/operators/emr.py
@@ -742,10 +742,20 @@ class EmrCreateJobFlowOperator(BaseOperator):
waiter_max_attempts: int | None = None,
waiter_delay: int | None = None,
waiter_countdown: int | None = None,
- waiter_check_interval_seconds: int = 60,
+ waiter_check_interval_seconds: int | None = None,
deferrable: bool = conf.getboolean("operators", "default_deferrable",
fallback=False),
**kwargs: Any,
):
+ if waiter_check_interval_seconds:
+ warnings.warn(
+ "The parameter `waiter_check_interval_seconds` has been
deprecated to "
+ "standardize naming conventions. Please `use waiter_delay
instead`. In the "
+ "future this will default to None and defer to the waiter's
default value.",
+ AirflowProviderDeprecationWarning,
+ stacklevel=2,
+ )
+ else:
+ waiter_check_interval_seconds = 60
if waiter_countdown:
warnings.warn(
"The parameter waiter_countdown has been deprecated to
standardize "
@@ -757,15 +767,7 @@ class EmrCreateJobFlowOperator(BaseOperator):
# waiter_countdown defaults to never timing out, which is not
supported
# by boto waiters, so we will set it here to "a very long time"
for now.
waiter_max_attempts = (waiter_countdown or 999) //
waiter_check_interval_seconds
- if waiter_check_interval_seconds:
- warnings.warn(
- "The parameter waiter_check_interval_seconds has been
deprecated to "
- "standardize naming conventions. Please use waiter_delay
instead. In the "
- "future this will default to None and defer to the waiter's
default value.",
- AirflowProviderDeprecationWarning,
- stacklevel=2,
- )
- waiter_delay = waiter_check_interval_seconds
+
super().__init__(**kwargs)
self.aws_conn_id = aws_conn_id
self.emr_conn_id = emr_conn_id
@@ -773,7 +775,7 @@ class EmrCreateJobFlowOperator(BaseOperator):
self.region_name = region_name
self.wait_for_completion = wait_for_completion
self.waiter_max_attempts = waiter_max_attempts or 60
- self.waiter_delay = waiter_delay or 30
+ self.waiter_delay = waiter_delay or waiter_check_interval_seconds or 60
self.deferrable = deferrable
@cached_property
diff --git a/tests/always/test_example_dags.py
b/tests/always/test_example_dags.py
index 2e75183be0..43104a884c 100644
--- a/tests/always/test_example_dags.py
+++ b/tests/always/test_example_dags.py
@@ -48,7 +48,6 @@ IGNORE_AIRFLOW_PROVIDER_DEPRECATION_WARNING: tuple[str, ...]
= (
# If the deprecation is postponed, the item should be added to this tuple,
# and a corresponding Issue should be created on GitHub.
"tests/system/providers/amazon/aws/example_ecs_fargate.py",
- "tests/system/providers/amazon/aws/example_emr.py",
"tests/system/providers/amazon/aws/example_emr_notebook_execution.py",
"tests/system/providers/google/cloud/bigquery/example_bigquery_operations.py",
"tests/system/providers/google/cloud/bigquery/example_bigquery_sensors.py",