1
- # This file is autogenerated by maturin v1.4.0
1
+ # This file is autogenerated by maturin v1.8.2
2
2
# To update, run
3
3
#
4
- # maturin generate-ci github
4
+ # maturin generate-ci github --manifest-path Cargo.toml
5
5
#
6
- name : argmin-testfunctions-py
6
+ name : CI
7
7
8
8
on :
9
9
push :
10
10
branches :
11
11
- main
12
+ - master
12
13
tags :
13
- - ' argmin-testfunctions-py-v *'
14
+ - ' *'
14
15
pull_request :
15
16
workflow_dispatch :
16
17
17
- defaults :
18
- run :
19
- working-directory : ./python/argmin-testfunctions-py
20
-
21
18
permissions :
22
19
contents : read
23
20
24
21
jobs :
25
22
linux :
26
- runs-on : ubuntu-latest
23
+ runs-on : ${{ matrix.platform.runner }}
27
24
strategy :
28
25
matrix :
29
- 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
30
39
steps :
31
40
- uses : actions/checkout@v4
32
41
- uses : actions/setup-python@v5
33
42
with :
34
- python-version : ' 3.10 '
43
+ python-version : 3.x
35
44
- name : Build wheels
36
45
uses : PyO3/maturin-action@v1
37
46
with :
38
- target : ${{ matrix.target }}
47
+ target : ${{ matrix.platform. target }}
39
48
args : --release --out dist --find-interpreter --manifest-path python/argmin-testfunctions-py/Cargo.toml
40
- sccache : ' true '
49
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
41
50
manylinux : auto
42
51
- name : Upload wheels
43
- uses : actions/upload-artifact@v3
52
+ uses : actions/upload-artifact@v4
53
+ with :
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 --manifest-path python/argmin-testfunctions-py/Cargo.toml
80
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
81
+ manylinux : musllinux_1_2
82
+ - name : Upload wheels
83
+ uses : actions/upload-artifact@v4
44
84
with :
45
- name : wheels
85
+ name : wheels-musllinux-${{ matrix.platform.target }}
46
86
path : dist
47
87
48
88
windows :
49
- runs-on : windows-latest
89
+ runs-on : ${{ matrix.platform.runner }}
50
90
strategy :
51
91
matrix :
52
- target : [x64, x86]
92
+ platform :
93
+ - runner : windows-latest
94
+ target : x64
95
+ - runner : windows-latest
96
+ target : x86
53
97
steps :
54
98
- uses : actions/checkout@v4
55
99
- uses : actions/setup-python@v5
56
100
with :
57
- python-version : ' 3.10 '
58
- architecture : ${{ matrix.target }}
101
+ python-version : 3.x
102
+ architecture : ${{ matrix.platform. target }}
59
103
- name : Build wheels
60
104
uses : PyO3/maturin-action@v1
61
105
with :
62
- target : ${{ matrix.target }}
106
+ target : ${{ matrix.platform. target }}
63
107
args : --release --out dist --find-interpreter --manifest-path python/argmin-testfunctions-py/Cargo.toml
64
- sccache : ' true '
108
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
65
109
- name : Upload wheels
66
- uses : actions/upload-artifact@v3
110
+ uses : actions/upload-artifact@v4
67
111
with :
68
- name : wheels
112
+ name : wheels-windows-${{ matrix.platform.target }}
69
113
path : dist
70
114
71
115
macos :
72
- runs-on : macos-latest
116
+ runs-on : ${{ matrix.platform.runner }}
73
117
strategy :
74
118
matrix :
75
- target : [x86_64, aarch64]
119
+ platform :
120
+ - runner : macos-13
121
+ target : x86_64
122
+ - runner : macos-14
123
+ target : aarch64
76
124
steps :
77
125
- uses : actions/checkout@v4
78
126
- uses : actions/setup-python@v5
79
127
with :
80
- python-version : ' 3.10 '
128
+ python-version : 3.x
81
129
- name : Build wheels
82
130
uses : PyO3/maturin-action@v1
83
131
with :
84
- target : ${{ matrix.target }}
132
+ target : ${{ matrix.platform. target }}
85
133
args : --release --out dist --find-interpreter --manifest-path python/argmin-testfunctions-py/Cargo.toml
86
- sccache : ' true '
134
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
87
135
- name : Upload wheels
88
- uses : actions/upload-artifact@v3
136
+ uses : actions/upload-artifact@v4
89
137
with :
90
- name : wheels
138
+ name : wheels-macos-${{ matrix.platform.target }}
91
139
path : dist
92
140
93
141
sdist :
@@ -100,24 +148,34 @@ jobs:
100
148
command : sdist
101
149
args : --out dist --manifest-path python/argmin-testfunctions-py/Cargo.toml
102
150
- name : Upload sdist
103
- uses : actions/upload-artifact@v3
151
+ uses : actions/upload-artifact@v4
104
152
with :
105
- name : wheels
153
+ name : wheels-sdist
106
154
path : dist
107
155
108
156
release :
109
157
name : Release
110
158
runs-on : ubuntu-latest
111
- if : " startsWith(github.ref, 'refs/tags/argmin-testfunctions-py-v')"
112
- 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
113
168
steps :
114
- - uses : actions/download-artifact@v3
169
+ - uses : actions/download-artifact@v4
170
+ - name : Generate artifact attestation
171
+ uses : actions/attest-build-provenance@v1
115
172
with :
116
- name : wheels
173
+ subject-path : ' wheels-*/* '
117
174
- name : Publish to PyPI
175
+ if : ${{ startsWith(github.ref, 'refs/tags/') }}
118
176
uses : PyO3/maturin-action@v1
119
177
env :
120
178
MATURIN_PYPI_TOKEN : ${{ secrets.PYPI_API_TOKEN }}
121
179
with :
122
180
command : upload
123
- args : --non-interactive --skip-existing *
181
+ args : --non-interactive --skip-existing wheels-*/ *
0 commit comments