11
11
12
12
jobs :
13
13
make-wheels :
14
- name : Make ${{ matrix.os }} wheels
14
+ name : Make ${{ matrix.os }} ${{ matrix.cibw_arch }} ${{ matrix.py_version }} wheels
15
15
runs-on : ${{ matrix.os }}
16
16
strategy :
17
17
matrix :
18
18
os : ["macos-latest", "ubuntu-latest", "windows-latest"]
19
+ cibw_arch : ["native", "aarch64"]
20
+ py_version : ["cp37-*", "cp38-*", "cp39-*", "cp310-*"]
21
+ exclude :
22
+ - os : macos-latest
23
+ cibw_arch : " aarch64"
24
+ - os : windows-latest
25
+ cibw_arch : " aarch64"
19
26
fail-fast : false
20
27
21
28
steps :
30
37
path : C:/rtools40
31
38
key : ${{ runner.os }}-${{ env.OS_VERSION }}-rtools-v1
32
39
40
+ - name : Set up QEMU
41
+ if : matrix.cibw_arch == 'aarch64'
42
+ uses : docker/setup-qemu-action@v2
43
+ with :
44
+ platforms : arm64
45
+
33
46
- name : " Build wheels"
34
47
35
48
with :
@@ -38,17 +51,17 @@ jobs:
38
51
CIBW_ENVIRONMENT : >
39
52
STAN_BACKEND="${{ env.STAN_BACKEND }}"
40
53
CIBW_MANYLINUX_X86_64_IMAGE : manylinux2014
41
- CIBW_BUILD : cp37-* cp38-* cp39-* cp310-*
54
+ CIBW_BUILD : ${{ matrix.py_version }}
42
55
CIBW_SKIP : " *musllinux*"
43
- CIBW_ARCHS : native
56
+ CIBW_ARCHS : ${{ matrix.cibw_arch }}
44
57
CIBW_BUILD_FRONTEND : build
45
58
CIBW_TEST_REQUIRES : pytest
46
59
CIBW_TEST_COMMAND : pytest --pyargs prophet
47
60
48
61
- name : " Upload wheel as artifact"
49
62
uses : actions/upload-artifact@v3
50
63
with :
51
- name : artifact-${{ matrix.os }}-wheel
64
+ name : artifact-${{ matrix.os }}-${{ matrix.cibw_arch }}- wheel
52
65
path : " ./**/*.whl"
53
66
54
67
make-sdist :
0 commit comments