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

HeartSaVioR pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/spark.git


The following commit(s) were added to refs/heads/master by this push:
     new 35395613033e [SPARK-58538][INFRA] Add branch-4.3 CI scheduler and 
release integration
35395613033e is described below

commit 35395613033ed46df2b0ad67efbddd17188fc532
Author: Jungtaek Lim <[email protected]>
AuthorDate: Wed Aug 5 04:31:05 2026 +0900

    [SPARK-58538][INFRA] Add branch-4.3 CI scheduler and release integration
    
    ### What changes were proposed in this pull request?
    
    Add the CI and release plumbing that `master` maintains for each active 
release branch, for the newly cut `branch-4.3`:
    
    - add `.github/workflows/branch43_scheduler.yml`, modelled on 
`branch42_scheduler.yml`, dispatching the eight per-branch build workflows 
against `--ref branch-4.3`;
    - add `branch-4.3` to both branch lists in `publish_snapshot.yml` (the 
`workflow_dispatch` input default and the strategy matrix default, which the 
file marks as needing to stay in sync);
    - add a `branch-4.3` badge row to `README.md`, following the release-branch 
pattern (which includes `build_main.yml`, unlike the rolling `branch-4.x`).
    
    Cron hours are staggered against the existing schedulers to spread runner 
load: branch-4.3 uses 0, 1, 6, 8, 10, 14, 20 and 23 UTC.
    
    `dev/create-release/release-util.sh` needs no change: it derives the latest 
release branch by excluding `master` and `branch-4.x` and taking the highest 
remaining, which already resolves to `branch-4.3`.
    
    ### Why are the changes needed?
    
    Since we cut the branch for 4.3, we need to setup new CI schedule for this 
branch.
    
    ### Does this PR introduce _any_ user-facing change?
    
    No.
    
    ### How was this patch tested?
    
    CI schedule will confirm.
    
    ### Was this patch authored or co-authored using generative AI tooling?
    
    Generated-by: Claude Opus 5
    
    Closes #57741 from HeartSaVioR/branch43-ci-infra.
    
    Authored-by: Jungtaek Lim <[email protected]>
    Signed-off-by: Jungtaek Lim <[email protected]>
---
 .github/workflows/branch43_scheduler.yml | 114 +++++++++++++++++++++++++++++++
 .github/workflows/publish_snapshot.yml   |   4 +-
 README.md                                |   9 +++
 3 files changed, 125 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/branch43_scheduler.yml 
b/.github/workflows/branch43_scheduler.yml
new file mode 100644
index 000000000000..85c0ab74a421
--- /dev/null
+++ b/.github/workflows/branch43_scheduler.yml
@@ -0,0 +1,114 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+name: "Branch-4.3 CI Scheduler"
+
+on:
+  schedule:
+    - cron: '0 0 */2 * *'
+    - cron: '0 1 */2 * *'
+    - cron: '0 6 */2 * *'
+    - cron: '0 8 */2 * *'
+    - cron: '0 10 */2 * *'
+    - cron: '0 14 */2 * *'
+    - cron: '0 20 */2 * *'
+    - cron: '0 23 */2 * *'
+  workflow_dispatch:
+    inputs:
+      target:
+        description: Target workflow to run
+        required: true
+        type: choice
+        default: all
+        options:
+          - all
+          - maven
+          - maven_java21
+          - java17
+          - java21
+          - java25
+          - non_ansi
+          - python_3.11
+          - python_3.14
+
+jobs:
+  schedule:
+    if: github.repository == 'apache/spark'
+    runs-on: ubuntu-latest
+    env:
+      GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+    permissions:
+      actions: write
+    steps:
+      - name: Maven Build
+        if: >-
+          github.event.schedule == '0 10 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'maven' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_maven.yml --repo ${{ github.repository }} 
--ref branch-4.3
+      - name: Maven Java 21 Build
+        if: >-
+          github.event.schedule == '0 14 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'maven_java21' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_maven_java21.yml --repo ${{ github.repository 
}} --ref branch-4.3
+      - name: Java 17 Build
+        if: >-
+          github.event.schedule == '0 8 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'java17' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_java17.yml --repo ${{ github.repository }} 
--ref branch-4.3
+      - name: Java 21 Build
+        if: >-
+          github.event.schedule == '0 1 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'java21' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_java21.yml --repo ${{ github.repository }} 
--ref branch-4.3
+      - name: Java 25 Build
+        if: >-
+          github.event.schedule == '0 6 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'java25' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_java25.yml --repo ${{ github.repository }} 
--ref branch-4.3
+      - name: Non-ANSI Build
+        if: >-
+          github.event.schedule == '0 0 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'non_ansi' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_non_ansi.yml --repo ${{ github.repository }} 
--ref branch-4.3
+      - name: Python 3.11 Build
+        if: >-
+          github.event.schedule == '0 20 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'python_3.11' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_python_3.11.yml --repo ${{ github.repository 
}} --ref branch-4.3
+      - name: Python 3.14 Build
+        if: >-
+          github.event.schedule == '0 23 */2 * *' ||
+          (github.event_name == 'workflow_dispatch' &&
+            (inputs.target == 'python_3.14' || inputs.target == 'all'))
+        run: |
+          gh workflow run build_python_3.14.yml --repo ${{ github.repository 
}} --ref branch-4.3
diff --git a/.github/workflows/publish_snapshot.yml 
b/.github/workflows/publish_snapshot.yml
index 224f3c3207c0..80f450ba7995 100644
--- a/.github/workflows/publish_snapshot.yml
+++ b/.github/workflows/publish_snapshot.yml
@@ -28,7 +28,7 @@ on:
         description: 'list of branches to publish (JSON)'
         required: true
         # keep in sync with default value of strategy matrix 'branch'
-        default: '["master", "branch-4.x", "branch-4.2", "branch-4.1", 
"branch-4.0", "branch-3.5"]'
+        default: '["master", "branch-4.x", "branch-4.3", "branch-4.2", 
"branch-4.1", "branch-4.0", "branch-3.5"]'
 
 jobs:
   publish-snapshot:
@@ -39,7 +39,7 @@ jobs:
       max-parallel: 20
       matrix:
         # keep in sync with default value of workflow_dispatch input 'branch'
-        branch: ${{ fromJSON( inputs.branch || '["master", "branch-4.x", 
"branch-4.2", "branch-4.1", "branch-4.0", "branch-3.5"]' ) }}
+        branch: ${{ fromJSON( inputs.branch || '["master", "branch-4.x", 
"branch-4.3", "branch-4.2", "branch-4.1", "branch-4.0", "branch-3.5"]' ) }}
     steps:
     - name: Checkout Spark repository
       uses: actions/checkout@v6
diff --git a/README.md b/README.md
index 717822ef4203..3d79bf2d5da2 100644
--- a/README.md
+++ b/README.md
@@ -62,6 +62,15 @@ This README file only contains basic setup instructions.
 |            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_maven_java21.yml/badge.svg?branch=branch-4.x)](https://github.com/apache/spark/actions/workflows/build_maven_java21.yml?query=branch%3Abranch-4.x)
       |
 |            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_python_3.11.yml/badge.svg?branch=branch-4.x)](https://github.com/apache/spark/actions/workflows/build_python_3.11.yml?query=branch%3Abranch-4.x)
                   |
 |            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_python_3.14.yml/badge.svg?branch=branch-4.x)](https://github.com/apache/spark/actions/workflows/build_python_3.14.yml?query=branch%3Abranch-4.x)
           |
+| branch-4.3 | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_main.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_main.yml?query=branch%3Abranch-4.3)
                                 |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_java17.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_java17.yml?query=branch%3Abranch-4.3)
                   |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_java21.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_java21.yml?query=branch%3Abranch-4.3)
                   |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_java25.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_java25.yml?query=branch%3Abranch-4.3)
                   |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_non_ansi.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_non_ansi.yml?query=branch%3Abranch-4.3)
               |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_maven.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_maven.yml?query=branch%3Abranch-4.3)
                     |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_maven_java21.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_maven_java21.yml?query=branch%3Abranch-4.3)
       |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_python_3.11.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_python_3.11.yml?query=branch%3Abranch-4.3)
                   |
+|            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_python_3.14.yml/badge.svg?branch=branch-4.3)](https://github.com/apache/spark/actions/workflows/build_python_3.14.yml?query=branch%3Abranch-4.3)
           |
 | branch-4.2 | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_main.yml/badge.svg?branch=branch-4.2)](https://github.com/apache/spark/actions/workflows/build_main.yml?query=branch%3Abranch-4.2)
                                 |
 |            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_java17.yml/badge.svg?branch=branch-4.2)](https://github.com/apache/spark/actions/workflows/build_java17.yml?query=branch%3Abranch-4.2)
                   |
 |            | [![GitHub Actions 
Build](https://github.com/apache/spark/actions/workflows/build_java21.yml/badge.svg?branch=branch-4.2)](https://github.com/apache/spark/actions/workflows/build_java21.yml?query=branch%3Abranch-4.2)
                   |


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to