You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by sz...@apache.org on 2026/09/09 19:13:13 UTC

(iceberg) branch main updated: Build: Include Spark 4.2 in source releases (#18024)

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

szehon-ho pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git


The following commit(s) were added to refs/heads/main by this push:
     new 9d7b2c52fb Build: Include Spark 4.2 in source releases (#18024)
9d7b2c52fb is described below

commit 9d7b2c52fb62de40ff8bc7f15f8923bd62201c21
Author: Manu Zhang <Ow...@gmail.com>
AuthorDate: Thu Sep 10 03:13:07 2026 +0800

    Build: Include Spark 4.2 in source releases (#18024)
---
 .gitattributes                          |  3 --
 .github/workflows/source-release-ci.yml | 90 +++++++++++++++++++++++++++++++++
 2 files changed, 90 insertions(+), 3 deletions(-)

diff --git a/.gitattributes b/.gitattributes
index e26a1fdd31..8c92bc0528 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -29,6 +29,3 @@
 /examples/**   export-ignore
 /docs          export-ignore
 /docs/**       export-ignore
-/spark/v4.2    export-ignore
-/spark/v4.2/** export-ignore
-
diff --git a/.github/workflows/source-release-ci.yml b/.github/workflows/source-release-ci.yml
new file mode 100644
index 0000000000..62eb20424f
--- /dev/null
+++ b/.github/workflows/source-release-ci.yml
@@ -0,0 +1,90 @@
+#
+# 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: "Source Release CI"
+on:
+  push:
+    branches:
+    - 'main'
+    - '0.*'
+    - '1.*'
+    - '2.*'
+    paths:
+    - '.gitattributes'
+    - '.github/workflows/source-release-ci.yml'
+    - 'build.gradle'
+    - 'dev/source-release.sh'
+    - 'gradle.properties'
+    - 'gradle/**'
+    - 'gradlew'
+    - 'settings.gradle'
+    - '**/*.gradle'
+    - '**/*.gradle.kts'
+  pull_request:
+    paths:
+    - '.gitattributes'
+    - '.github/workflows/source-release-ci.yml'
+    - 'build.gradle'
+    - 'dev/source-release.sh'
+    - 'gradle.properties'
+    - 'gradle/**'
+    - 'gradlew'
+    - 'settings.gradle'
+    - '**/*.gradle'
+    - '**/*.gradle.kts'
+
+permissions:
+  contents: read
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
+jobs:
+  source-release:
+    runs-on: ubuntu-24.04
+    steps:
+    - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
+      with:
+        persist-credentials: false
+    - uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0
+      with:
+        distribution: zulu
+        java-version: 17
+    - uses: gradle/actions/setup-gradle@9c971963bec38e04b3d30dcc455b5382be2fdbfb # v6.3.0
+      with:
+        cache-read-only: true
+    - name: Generate release metadata
+      run: |
+        echo "0.0.0" > version.txt
+        ./gradlew generateGitProperties
+        cp build/iceberg-build.properties iceberg-build.properties
+    - name: Create source archive
+      run: |
+        git archive HEAD --worktree-attributes --prefix iceberg/ \
+          --add-file version.txt --add-file iceberg-build.properties \
+          -o "$RUNNER_TEMP/iceberg.tar.gz"
+        mkdir "$RUNNER_TEMP/source-release"
+        tar -xzf "$RUNNER_TEMP/iceberg.tar.gz" -C "$RUNNER_TEMP/source-release"
+    - name: Check default configuration
+      working-directory: ${{ runner.temp }}/source-release/iceberg
+      run: ./gradlew help --no-daemon
+    - name: Check all modules configuration
+      working-directory: ${{ runner.temp }}/source-release/iceberg
+      run: ./gradlew -DallModules help --no-daemon