This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch v3-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/v3-3-test by this push:
new 5f429f241fa [v3-3-test] Skip Go SDK CI jobs for doc-only changes under
go-sdk/ (#70021) (#70024)
5f429f241fa is described below
commit 5f429f241fa1b1aa707fadd4a1a5fa591efc7940
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Sun Jul 19 23:56:25 2026 +0200
[v3-3-test] Skip Go SDK CI jobs for doc-only changes under go-sdk/ (#70021)
(#70024)
go-sdk/*.md edits (README, ADRs) currently match the Go SDK file groups
and trigger the Go unit + e2e suites plus a prod image build, none of
which a documentation change can affect. Excluding .md also lets
non-.go build files (go.mod, go.sum, build config) trigger the unit
tests, which the previous .go-only pattern missed.
(cherry picked from commit 4f5e4b9843710b17990cbdc6aea7704525d669f7)
Co-authored-by: Andrew Chang <[email protected]>
---
.../src/airflow_breeze/utils/selective_checks.py | 7 ++++--
dev/breeze/tests/test_selective_checks.py | 27 ++++++++++++++++++++++
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 c3a651ecafc..79606ab8262 100644
--- a/dev/breeze/src/airflow_breeze/utils/selective_checks.py
+++ b/dev/breeze/src/airflow_breeze/utils/selective_checks.py
@@ -242,7 +242,8 @@ CI_FILE_GROUP_MATCHES: HashableDict[FileGroupForCi] =
HashableDict(
r"^task-sdk/src/airflow/sdk/coordinators/java/.*",
],
FileGroupForCi.GO_SDK_E2E_FILES: [
- r"^go-sdk/.*",
+ # `.md` excluded — doc-only edits do not affect the Go build or
e2e tests.
+ r"^go-sdk/(?!.*\.md$).*",
r"^airflow-e2e-tests/tests/airflow_e2e_tests/go_sdk_tests/.*",
r"^airflow-e2e-tests/docker/go\.yml$",
r"^task-sdk/src/airflow/sdk/coordinators/_subprocess\.py$",
@@ -418,7 +419,9 @@ CI_FILE_GROUP_MATCHES: HashableDict[FileGroupForCi] =
HashableDict(
r"^task-sdk-integration-tests/.*\.py$",
],
FileGroupForCi.GO_SDK_FILES: [
- r"^go-sdk/.*\.go$",
+ # `.md` excluded — doc-only edits do not affect the Go build or
tests, but
+ # everything else (go.mod, go.sum, build config) must trigger the
unit tests.
+ r"^go-sdk/(?!.*\.md$).*",
],
FileGroupForCi.JAVA_SDK_FILES: [
r"^java-sdk/",
diff --git a/dev/breeze/tests/test_selective_checks.py
b/dev/breeze/tests/test_selective_checks.py
index ccf365d4734..9804873685f 100644
--- a/dev/breeze/tests/test_selective_checks.py
+++ b/dev/breeze/tests/test_selective_checks.py
@@ -1453,6 +1453,33 @@ def assert_outputs_are_printed(expected_outputs:
dict[str, str], stderr: str):
},
id="Run go unit and e2e tests for go-sdk source change",
),
+ pytest.param(
+ ("go-sdk/go.mod",),
+ {
+ "run-go-sdk-tests": "true",
+ "run-go-sdk-e2e-tests": "true",
+ "prod-image-build": "true",
+ },
+ id="Run go unit and e2e tests for go-sdk dependency change",
+ ),
+ pytest.param(
+ ("go-sdk/README.md",),
+ {
+ "run-go-sdk-tests": "false",
+ "run-go-sdk-e2e-tests": "false",
+ "prod-image-build": "false",
+ },
+ id="Skip go unit and e2e tests for go-sdk README-only change",
+ ),
+ pytest.param(
+ ("go-sdk/adr/0001-bundle-packing-options.md",),
+ {
+ "run-go-sdk-tests": "false",
+ "run-go-sdk-e2e-tests": "false",
+ "prod-image-build": "false",
+ },
+ id="Skip go unit and e2e tests for go-sdk ADR-only change",
+ ),
pytest.param(
("airflow-e2e-tests/docker/go.yml",),
{