1
- # This file is autogenerated by maturin v1.3.1
1
+ # This file is autogenerated by maturin v1.8.6
2
2
# To update, run
3
3
#
4
4
# maturin generate-ci github
@@ -20,71 +20,122 @@ permissions:
20
20
21
21
jobs :
22
22
linux :
23
- runs-on : ubuntu-latest
23
+ runs-on : ${{ matrix.platform.runner }}
24
24
strategy :
25
25
matrix :
26
- target : [x86_64, x86, aarch64, armv7, s390x, ppc64le]
26
+ platform :
27
+ - runner : ubuntu-22.04
28
+ target : x86_64
29
+ - runner : ubuntu-22.04
30
+ target : x86
31
+ - runner : ubuntu-22.04
32
+ target : aarch64
33
+ - runner : ubuntu-22.04
34
+ target : armv7
35
+ - runner : ubuntu-22.04
36
+ target : s390x
37
+ - runner : ubuntu-22.04
38
+ target : ppc64le
27
39
steps :
28
40
- uses : actions/checkout@v4
29
41
- uses : actions/setup-python@v5
30
42
with :
31
- python-version : ' 3.10 '
43
+ python-version : 3.x
32
44
- name : Build wheels
33
45
uses : PyO3/maturin-action@v1
34
46
with :
35
- target : ${{ matrix.target }}
47
+ target : ${{ matrix.platform. target }}
36
48
args : --release --out dist --find-interpreter
37
- sccache : ' true '
49
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
38
50
manylinux : auto
39
51
- name : Upload wheels
40
52
uses : actions/upload-artifact@v4
41
53
with :
42
- name : wheels-linux-${{ matrix.target }}
54
+ name : wheels-linux-${{ matrix.platform.target }}
55
+ path : dist
56
+
57
+ musllinux :
58
+ runs-on : ${{ matrix.platform.runner }}
59
+ strategy :
60
+ matrix :
61
+ platform :
62
+ - runner : ubuntu-22.04
63
+ target : x86_64
64
+ - runner : ubuntu-22.04
65
+ target : x86
66
+ - runner : ubuntu-22.04
67
+ target : aarch64
68
+ - runner : ubuntu-22.04
69
+ target : armv7
70
+ steps :
71
+ - uses : actions/checkout@v4
72
+ - uses : actions/setup-python@v5
73
+ with :
74
+ python-version : 3.x
75
+ - name : Build wheels
76
+ uses : PyO3/maturin-action@v1
77
+ with :
78
+ target : ${{ matrix.platform.target }}
79
+ args : --release --out dist --find-interpreter
80
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
81
+ manylinux : musllinux_1_2
82
+ - name : Upload wheels
83
+ uses : actions/upload-artifact@v4
84
+ with :
85
+ name : wheels-musllinux-${{ matrix.platform.target }}
43
86
path : dist
44
87
45
88
windows :
46
- runs-on : windows-latest
89
+ runs-on : ${{ matrix.platform.runner }}
47
90
strategy :
48
91
matrix :
49
- target : [x64, x86]
92
+ platform :
93
+ - runner : windows-latest
94
+ target : x64
95
+ - runner : windows-latest
96
+ target : x86
50
97
steps :
51
98
- uses : actions/checkout@v4
52
99
- uses : actions/setup-python@v5
53
100
with :
54
- python-version : ' 3.10 '
55
- architecture : ${{ matrix.target }}
101
+ python-version : 3.x
102
+ architecture : ${{ matrix.platform. target }}
56
103
- name : Build wheels
57
104
uses : PyO3/maturin-action@v1
58
105
with :
59
- target : ${{ matrix.target }}
106
+ target : ${{ matrix.platform. target }}
60
107
args : --release --out dist --find-interpreter
61
- sccache : ' true '
108
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
62
109
- name : Upload wheels
63
110
uses : actions/upload-artifact@v4
64
111
with :
65
- name : wheels-windows-${{ matrix.target }}
112
+ name : wheels-windows-${{ matrix.platform. target }}
66
113
path : dist
67
114
68
115
macos :
69
- runs-on : macos-latest
116
+ runs-on : ${{ matrix.platform.runner }}
70
117
strategy :
71
118
matrix :
72
- target : [x86_64, aarch64]
119
+ platform :
120
+ - runner : macos-13
121
+ target : x86_64
122
+ - runner : macos-14
123
+ target : aarch64
73
124
steps :
74
125
- uses : actions/checkout@v4
75
126
- uses : actions/setup-python@v5
76
127
with :
77
- python-version : ' 3.10 '
128
+ python-version : 3.x
78
129
- name : Build wheels
79
130
uses : PyO3/maturin-action@v1
80
131
with :
81
- target : ${{ matrix.target }}
132
+ target : ${{ matrix.platform. target }}
82
133
args : --release --out dist --find-interpreter
83
- sccache : ' true '
134
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
84
135
- name : Upload wheels
85
136
uses : actions/upload-artifact@v4
86
137
with :
87
- name : wheels-macos-${{ matrix.target }}
138
+ name : wheels-macos-${{ matrix.platform. target }}
88
139
path : dist
89
140
90
141
sdist :
@@ -105,18 +156,26 @@ jobs:
105
156
release :
106
157
name : Release
107
158
runs-on : ubuntu-latest
108
- if : " startsWith(github.ref, 'refs/tags/')"
109
- needs : [linux, windows, macos, sdist]
159
+ if : ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
160
+ needs : [linux, musllinux, windows, macos, sdist]
161
+ permissions :
162
+ # Use to sign the release artifacts
163
+ id-token : write
164
+ # Used to upload release artifacts
165
+ contents : write
166
+ # Used to generate artifact attestation
167
+ attestations : write
110
168
steps :
111
169
- uses : actions/download-artifact@v4
170
+ - name : Generate artifact attestation
171
+ uses : actions/attest-build-provenance@v2
112
172
with :
113
- pattern : wheels-*
114
- path : wheels
115
- merge-multiple : true
173
+ subject-path : ' wheels-*/*'
116
174
- name : Publish to PyPI
175
+ if : ${{ startsWith(github.ref, 'refs/tags/') }}
117
176
uses : PyO3/maturin-action@v1
118
177
env :
119
178
MATURIN_PYPI_TOKEN : ${{ secrets.PYPI_API_TOKEN }}
120
179
with :
121
180
command : upload
122
- args : --non-interactive --skip-existing wheels/*
181
+ args : --non-interactive --skip-existing wheels-* /*
0 commit comments