1717 runs-on : ${{ matrix.os }}
1818 strategy :
1919 matrix :
20- os : [windows-2022, ubuntu-22.04, macos-14]
20+ os : [windows-2022, ubuntu-22.04, ubuntu-22.04-arm, macos-14]
2121
2222 steps :
2323 - uses : actions/checkout@v6
@@ -33,28 +33,34 @@ jobs:
3333
3434 - name : Build extension for ${{ matrix.os }}
3535 shell : bash
36- if : matrix .os != 'ubuntu-22.04 '
36+ if : runner .os != 'Linux '
3737 run : |
3838 python3 -m pip wheel . -w dist
3939 for old in dist/rocketsim-*.whl
4040 do
41- new=$(echo $old | sed -E 's/-(cp[0-9]+)-cp[0-9]+-/-cp39 -abi3-/g')
41+ new=$(echo $old | sed -E 's/-(cp[0-9]+)-cp[0-9]+-/-cp36 -abi3-/g')
4242 mv $old $new
4343 done
4444
4545 - name : Build extension for ${{ matrix.os }}
46- if : matrix .os == 'ubuntu-22.04 '
46+ if : runner .os == 'Linux '
4747 run : |
4848 python3 -m cibuildwheel --output-dir dist
49+ if [[ "${{ matrix.os }}" = "ubuntu-22.04-arm" ]]
50+ then
51+ arch="aarch64"
52+ else
53+ arch="x86_64"
54+ fi
4955 for old in dist/rocketsim-*.whl
5056 do
51- new=$(echo $old | sed -E ' s/-(cp[0-9]+)-cp[0-9]+-.*\.whl/-cp39 -abi3-manylinux2014_x86_64 .whl/g' )
57+ new=$(echo $old | sed -E " s/-(cp[0-9]+)-cp[0-9]+-.*\\ .whl/-cp36 -abi3-manylinux_2_27_${arch} .whl/g" )
5258 mv $old $new
5359 done
5460
5561 - uses : actions/upload-artifact@v6
5662 with :
57- name : wheel-${{ matrix .os }}
63+ name : wheel-${{ runner .os }}-${{ runner.arch }}
5864 path : dist/rocketsim-*.whl
5965
6066 test_wheel :
6470 strategy :
6571 fail-fast : false
6672 matrix :
67- os : [windows-2022, ubuntu-22.04, macos-14]
73+ os : [windows-2022, windows-2025, ubuntu-22.04, ubuntu-22.04-arm, ubuntu-24.04, ubuntu-24.04-arm, macos-14, macos-15 ]
6874 pyversion : ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
6975
7076 steps :
8288 - name : Download artifact ${{ matrix.os }}
8389 uses : actions/download-artifact@v7
8490 with :
85- name : wheel-${{ matrix .os }}
91+ name : wheel-${{ runner .os }}-${{ runner.arch }}
8692 path : dist
8793
8894 - name : Install extension
@@ -131,22 +137,28 @@ jobs:
131137 permissions :
132138 id-token : write
133139 steps :
134- - name : Download artifact windows-2022
140+ - name : Download artifact Windows-X64
135141 uses : actions/download-artifact@v7
136142 with :
137- name : wheel-windows-2022
143+ name : wheel-Windows-X64
138144 path : dist
139145
140- - name : Download artifact ubuntu-22.04
146+ - name : Download artifact Linux-X64
141147 uses : actions/download-artifact@v7
142148 with :
143- name : wheel-ubuntu-22.04
149+ name : wheel-Linux-X64
144150 path : dist
145151
146- - name : Download artifact macos-14
152+ - name : Download artifact Linux-ARM64
147153 uses : actions/download-artifact@v7
148154 with :
149- name : wheel-macos-14
155+ name : wheel-Linux-ARM64
156+ path : dist
157+
158+ - name : Download artifact macOS-ARM64
159+ uses : actions/download-artifact@v7
160+ with :
161+ name : wheel-macOS-ARM64
150162 path : dist
151163
152164 - name : Publish package distributions to PyPI
0 commit comments