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

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


The following commit(s) were added to refs/heads/master by this push:
     new 3c86af30 chore(python): build sdk with musllinux (#2237)
3c86af30 is described below

commit 3c86af3004d698cdda7763038efc4daf10de082c
Author: Huan-Cheng Chang <[email protected]>
AuthorDate: Tue Oct 7 09:14:44 2025 +0100

    chore(python): build sdk with musllinux (#2237)
    
    ### Description
    
    Updated the `_build_python_wheels` workflow to cover python SDK wheels
    built with musllinux. Python SDK for linux will have 4 variations:
    * manylinux_x86
    * manylinux_arm64
    * musllinux_x86
    * musllinux_arm64
    
    ### Testing
    
    [Test build](https://github.com/changhc/iggy/actions/runs/18263772305)
    
    Manually tested the built musllinux wheels on an x86 machine:
    * Download the built artefact `wheels-linux-x86_64-musllinux_1_2 ` and
    unzip the archive
    * ```sh
    $ docker run --rm -it --entrypoint sh -v $PWD:/sdk python:3.12-alpine \
    -c 'pip install
    /sdk/apache_iggy-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl'
      Processing /sdk/apache_iggy-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl
      Installing collected packages: apache-iggy
      Successfully installed apache-iggy-0.5.0
      ```
    
    ---------
    
    Co-authored-by: Hubert Gruszecki <[email protected]>
---
 .github/workflows/_build_python_wheels.yml | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/_build_python_wheels.yml 
b/.github/workflows/_build_python_wheels.yml
index e3f6c5a3..7ba2b0c4 100644
--- a/.github/workflows/_build_python_wheels.yml
+++ b/.github/workflows/_build_python_wheels.yml
@@ -51,8 +51,16 @@ jobs:
         include:
           - target: x86_64
             runner: ubuntu-latest
+            manylinux: 2_34
+          - target: x86_64
+            runner: ubuntu-latest
+            manylinux: musllinux_1_2
+          - target: aarch64
+            runner: ubuntu-24.04-arm
+            manylinux: auto
           - target: aarch64
             runner: ubuntu-24.04-arm
+            manylinux: musllinux_1_2
     steps:
       - name: Download latest copy script from master
         if: inputs.use_latest_ci
@@ -94,7 +102,7 @@ jobs:
               yum install -y perl-IPC-Cmd
             fi
             python3 -m pip --version || python3 -m ensurepip
-          manylinux: ${{ matrix.target == 'aarch64' && 'auto' || '2_34' }}
+          manylinux: ${{ matrix.manylinux }}
           args: --release --out dist --interpreter python3.10 python3.11 
python3.12 python3.13
           sccache: "true"
 
@@ -102,7 +110,7 @@ jobs:
         if: inputs.upload_artifacts
         uses: actions/upload-artifact@v4
         with:
-          name: wheels-linux-${{ matrix.target }}
+          name: wheels-linux-${{ matrix.target }}-${{ matrix.manylinux }}
           path: foreign/python/dist
           retention-days: 7
 

Reply via email to