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 <[email protected]>
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] "

Reply via email to