This is an automated email from the ASF dual-hosted git repository.

jason810496 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 09bba935c0f Skip Java SDK jobs for doc-only changes (#69674)
09bba935c0f is described below

commit 09bba935c0ffbf2633e9cf9a511dbfe6d7e2d1c5
Author: Andrew Chang <[email protected]>
AuthorDate: Sat Jul 11 04:04:30 2026 +0200

    Skip Java SDK jobs for doc-only changes (#69674)
---
 .../src/airflow_breeze/utils/selective_checks.py   |  6 +++--
 dev/breeze/tests/test_selective_checks.py          | 28 ++++++++++++++++++++++
 2 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/dev/breeze/src/airflow_breeze/utils/selective_checks.py 
b/dev/breeze/src/airflow_breeze/utils/selective_checks.py
index b9c41a23c09..1edf4b4bfd7 100644
--- a/dev/breeze/src/airflow_breeze/utils/selective_checks.py
+++ b/dev/breeze/src/airflow_breeze/utils/selective_checks.py
@@ -237,7 +237,8 @@ CI_FILE_GROUP_MATCHES: HashableDict[FileGroupForCi] = 
HashableDict(
             r"^providers/common/messaging/.*",
         ],
         FileGroupForCi.JAVA_SDK_E2E_FILES: [
-            r"^java-sdk/.*",
+            # `.md` excluded — doc-only edits do not affect the Gradle build.
+            r"^java-sdk/(?!.*\.md$).*",
             r"^airflow-e2e-tests/tests/airflow_e2e_tests/java_sdk_tests/.*",
             r"^airflow-e2e-tests/docker/java\.yml$",
             r"^airflow-e2e-tests/docker/Dockerfile\.java$",
@@ -445,7 +446,8 @@ CI_FILE_GROUP_MATCHES: HashableDict[FileGroupForCi] = 
HashableDict(
             r"^go-sdk/.*\.go$",
         ],
         FileGroupForCi.JAVA_SDK_FILES: [
-            r"^java-sdk/",
+            # `.md` excluded — doc-only edits do not affect the Gradle build.
+            r"^java-sdk/(?!.*\.md$).*",
         ],
         FileGroupForCi.TS_SDK_FILES: [
             r"^ts-sdk/",
diff --git a/dev/breeze/tests/test_selective_checks.py 
b/dev/breeze/tests/test_selective_checks.py
index 6bb5056e9e2..530e6ad74aa 100644
--- a/dev/breeze/tests/test_selective_checks.py
+++ b/dev/breeze/tests/test_selective_checks.py
@@ -1433,6 +1433,24 @@ def assert_outputs_are_printed(expected_outputs: 
dict[str, str], stderr: str):
             },
             id="Run java unit and e2e tests for java-sdk source change",
         ),
+        pytest.param(
+            ("java-sdk/README.md",),
+            {
+                "run-java-sdk-tests": "false",
+                "run-java-sdk-e2e-tests": "false",
+                "prod-image-build": "false",
+            },
+            id="Skip java unit and e2e tests for java-sdk README-only change",
+        ),
+        pytest.param(
+            ("java-sdk/adr/0001-java-sdk-airflow-integration.md",),
+            {
+                "run-java-sdk-tests": "false",
+                "run-java-sdk-e2e-tests": "false",
+                "prod-image-build": "false",
+            },
+            id="Skip java unit and e2e tests for java-sdk ADR-only change",
+        ),
         pytest.param(
             ("airflow-e2e-tests/docker/java.yml",),
             {
@@ -1667,6 +1685,16 @@ def test_expected_output_pull_request_main(
             True,
             id="ktlint skipped when no java-sdk files change",
         ),
+        pytest.param(
+            ("java-sdk/README.md",),
+            True,
+            id="ktlint skipped when only java-sdk docs change",
+        ),
+        pytest.param(
+            ("java-sdk/adr/0001-java-sdk-airflow-integration.md",),
+            True,
+            id="ktlint skipped when only java-sdk ADR docs change",
+        ),
     ],
 )
 def test_ktlint_hook_only_runs_for_java_sdk_changes(files: tuple[str, ...], 
ktlint_skipped: bool):

Reply via email to