You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by xu...@apache.org on 2023/11/24 05:07:33 UTC

(incubator-opendal) 01/01: ci(java/binding): Use zigbuild for glibc 2.17 support

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

xuanwo pushed a commit to branch use-zigbuild-for-java
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git

commit f9740af3ab03f380b8176a474856ada19ee89d10
Author: Xuanwo <gi...@xuanwo.io>
AuthorDate: Fri Nov 24 13:07:07 2023 +0800

    ci(java/binding): Use zigbuild for glibc 2.17 support
    
    Signed-off-by: Xuanwo <gi...@xuanwo.io>
---
 .github/workflows/release_java.yml | 9 +++++++++
 bindings/java/tools/build.py       | 6 +++---
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/.github/workflows/release_java.yml b/.github/workflows/release_java.yml
index 472a3158c..83c12793b 100644
--- a/.github/workflows/release_java.yml
+++ b/.github/workflows/release_java.yml
@@ -24,6 +24,11 @@ on:
       # https://opendal.apache.org/docs/contributing/release#release-maven-artifacts
       - 'v[0-9]+.[0-9]+.[0-9]+-rc.[0-9]+'
   workflow_dispatch:
+  pull_request:
+    branches:
+      - main
+    paths:
+      - ".github/workflows/release_java.yml"
 
 jobs:
   stage-snapshot:
@@ -63,6 +68,10 @@ jobs:
           version: "23.4"
           repo-token: ${{ secrets.GITHUB_TOKEN }}
 
+      - name: Setup linux for zigbuild
+        if: "contains(matrix.os, 'ubuntu-latest')"
+        run: pip install cargo-zigbuild
+
       - name: Setup linux-aarch_64
         if: "contains(matrix.classifier, 'linux-aarch_64')"
         run: |
diff --git a/bindings/java/tools/build.py b/bindings/java/tools/build.py
index 45c744de6..ab8dca51c 100755
--- a/bindings/java/tools/build.py
+++ b/bindings/java/tools/build.py
@@ -29,9 +29,9 @@ def classifier_to_target(classifier: str) -> str:
     if classifier == 'osx-x86_64':
         return 'x86_64-apple-darwin'
     if classifier == 'linux-aarch_64':
-        return 'aarch64-unknown-linux-gnu'
+        return 'aarch64-unknown-linux-gnu.2.17'
     if classifier == 'linux-x86_64':
-        return 'x86_64-unknown-linux-gnu'
+        return 'x86_64-unknown-linux-gnu.2.17'
     if classifier == 'windows-x86_64':
         return 'x86_64-pc-windows-msvc'
     raise Exception(f'Unsupported classifier: {classifier}')
@@ -57,7 +57,7 @@ if __name__ == '__main__':
     parser.add_argument('--features', type=str, default='default')
     args = parser.parse_args()
 
-    cmd = ['cargo', 'build', '--color=always', f'--profile={args.profile}']
+    cmd = ['cargo', 'zigbuild', '--color=always', f'--profile={args.profile}']
 
     if args.features:
         cmd += ['--features', args.features]