You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2026/03/04 10:52:19 UTC
(airflow) branch main updated: Exclude suspended providers from provider test selection (#62832)
This is an automated email from the ASF dual-hosted git repository.
potiuk 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 82e5906de1a Exclude suspended providers from provider test selection (#62832)
82e5906de1a is described below
commit 82e5906de1ab11dd5d0bf3689214de2ad7f08f02
Author: yuseok89 <yu...@gmail.com>
AuthorDate: Wed Mar 4 19:52:11 2026 +0900
Exclude suspended providers from provider test selection (#62832)
---
.../src/airflow_breeze/utils/selective_checks.py | 9 ++--
dev/breeze/tests/test_selective_checks.py | 48 ++++++++++------------
2 files changed, 28 insertions(+), 29 deletions(-)
diff --git a/dev/breeze/src/airflow_breeze/utils/selective_checks.py b/dev/breeze/src/airflow_breeze/utils/selective_checks.py
index 20b8d47a7b8..8470b1e0247 100644
--- a/dev/breeze/src/airflow_breeze/utils/selective_checks.py
+++ b/dev/breeze/src/airflow_breeze/utils/selective_checks.py
@@ -1134,11 +1134,13 @@ class SelectiveChecks:
else:
candidate_test_types.add("Providers")
elif affected_providers:
+ suspended = set(get_suspended_provider_ids())
+ providers_to_test = [p for p in affected_providers if p not in suspended]
if split_to_individual_providers:
- for provider in affected_providers:
+ for provider in providers_to_test:
candidate_test_types.add(f"Providers[{provider}]")
else:
- candidate_test_types.add(f"Providers[{','.join(sorted(affected_providers))}]")
+ candidate_test_types.add(f"Providers[{','.join(sorted(providers_to_test))}]")
sorted_candidate_test_types = sorted(candidate_test_types)
get_console().print("[warning]Selected providers test type candidates to run:[/]")
get_console().print(sorted_candidate_test_types)
@@ -1443,7 +1445,8 @@ class SelectiveChecks:
return None
if isinstance(affected_providers, AllProvidersSentinel):
return ""
- return " ".join(sorted(affected_providers))
+ suspended = set(get_suspended_provider_ids())
+ return " ".join(sorted(p for p in affected_providers if p not in suspended))
def get_job_label(self, event_type: str, branch: str):
import requests
diff --git a/dev/breeze/tests/test_selective_checks.py b/dev/breeze/tests/test_selective_checks.py
index fff9917e8f2..3ac9f26f1cf 100644
--- a/dev/breeze/tests/test_selective_checks.py
+++ b/dev/breeze/tests/test_selective_checks.py
@@ -385,7 +385,7 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
pytest.param(
("providers/apache/beam/tests/unit/apache/beam/file.py",),
{
- "selected-providers-list-as-string": "apache.beam common.compat google",
+ "selected-providers-list-as-string": "common.compat google",
"all-python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
"all-python-versions-list-as-string": DEFAULT_PYTHON_MAJOR_MINOR_VERSION,
"python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
@@ -405,17 +405,16 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam,c...google",
- "test_types": "Providers[apache.beam,common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
"individual-providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam...google",
- "test_types": "Providers[apache.beam] "
- "Providers[common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
@@ -429,7 +428,7 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
pytest.param(
("providers/apache/beam/tests/unit/apache/beam/file.py",),
{
- "selected-providers-list-as-string": "apache.beam common.compat google",
+ "selected-providers-list-as-string": "common.compat google",
"all-python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
"all-python-versions-list-as-string": DEFAULT_PYTHON_MAJOR_MINOR_VERSION,
"python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
@@ -449,17 +448,16 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam,c...google",
- "test_types": "Providers[apache.beam,common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
"individual-providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam...google",
- "test_types": "Providers[apache.beam] "
- "Providers[common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
@@ -477,7 +475,7 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers/apache/beam/tests/unit/apache/beam/file.py",
),
{
- "selected-providers-list-as-string": "apache.beam common.compat google",
+ "selected-providers-list-as-string": "common.compat google",
"all-python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
"all-python-versions-list-as-string": DEFAULT_PYTHON_MAJOR_MINOR_VERSION,
"python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
@@ -497,17 +495,16 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam,c...google",
- "test_types": "Providers[apache.beam,common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
"individual-providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam...google",
- "test_types": "Providers[apache.beam] "
- "Providers[common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
@@ -525,7 +522,7 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers/apache/beam/tests/unit/apache/beam/file.py",
),
{
- "selected-providers-list-as-string": "apache.beam common.compat google",
+ "selected-providers-list-as-string": "common.compat google",
"all-python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
"all-python-versions-list-as-string": DEFAULT_PYTHON_MAJOR_MINOR_VERSION,
"python-versions": f"['{DEFAULT_PYTHON_MAJOR_MINOR_VERSION}']",
@@ -545,17 +542,16 @@ def assert_outputs_are_printed(expected_outputs: dict[str, str], stderr: str):
"providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam,c...google",
- "test_types": "Providers[apache.beam,common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
"individual-providers-test-types-list-as-strings-in-json": json.dumps(
[
{
- "description": "apache.beam...google",
- "test_types": "Providers[apache.beam] "
- "Providers[common.compat] Providers[google]",
+ "description": "common.compat...google",
+ "test_types": "Providers[common.compat] Providers[google]",
}
]
),
@@ -1944,7 +1940,7 @@ def test_expected_output_push(
"providers/google/tests/unit/google/file.py",
),
{
- "selected-providers-list-as-string": "amazon apache.beam apache.cassandra apache.kafka "
+ "selected-providers-list-as-string": "amazon apache.cassandra apache.kafka "
"cncf.kubernetes common.compat common.messaging common.sql databricks "
"facebook google hashicorp http microsoft.azure microsoft.mssql mysql "
"openlineage oracle postgres presto salesforce samba sftp ssh standard trino",
@@ -1970,7 +1966,7 @@ def test_expected_output_push(
[
{
"description": "amazon...standard",
- "test_types": "Providers[amazon] Providers[apache.beam,apache.cassandra,"
+ "test_types": "Providers[amazon] Providers[apache.cassandra,"
"apache.kafka,cncf.kubernetes,common.compat,common.messaging,common.sql,databricks,facebook,"
"hashicorp,http,microsoft.azure,microsoft.mssql,mysql,"
"openlineage,oracle,postgres,presto,salesforce,samba,sftp,ssh,trino] "