1
+ # This file is autogenerated by maturin v1.7.4
2
+ # To update, run
3
+ #
4
+ # maturin generate-ci github
5
+ #
6
+ name : Build wheels
7
+
8
+ on :
9
+ push :
10
+ branches :
11
+ - main
12
+ tags :
13
+ - ' *'
14
+ pull_request :
15
+ workflow_dispatch :
16
+
17
+ permissions :
18
+ contents : read
19
+
20
+ jobs :
21
+ linux :
22
+ runs-on : ${{ matrix.platform.runner }}
23
+ strategy :
24
+ matrix :
25
+ platform :
26
+ - runner : ubuntu-latest
27
+ target : x86_64
28
+ - runner : ubuntu-latest
29
+ target : x86
30
+ steps :
31
+ - uses : actions/checkout@v4
32
+ - uses : actions/setup-python@v5
33
+ with :
34
+ python-version : 3.x
35
+ - name : Build wheels
36
+ uses : PyO3/maturin-action@v1.44.0
37
+ with :
38
+ target : ${{ matrix.platform.target }}
39
+ args : --release --out dist --find-interpreter
40
+ sccache : ' true'
41
+ manylinux : auto
42
+ before-script-linux : (apt-get update && apt-get install -y apt-utils && apt-get install -y pkg-config libssl-dev) || (yum install openssl openssl-devel -y)
43
+ - name : Upload wheels
44
+ uses : actions/upload-artifact@v4
45
+ with :
46
+ name : wheels-linux-${{ matrix.platform.target }}
47
+ path : dist
48
+ macos :
49
+ runs-on : ${{ matrix.platform.runner }}
50
+ strategy :
51
+ matrix :
52
+ platform :
53
+ - runner : macos-13
54
+ target : x86_64
55
+ - runner : macos-14
56
+ target : aarch64
57
+ steps :
58
+ - uses : actions/checkout@v4
59
+ - uses : actions/setup-python@v5
60
+ with :
61
+ python-version : 3.x
62
+ - name : Build wheels
63
+ uses : PyO3/maturin-action@v1.44.0
64
+ with :
65
+ target : ${{ matrix.platform.target }}
66
+ args : --release --out dist --find-interpreter
67
+ sccache : ' true'
68
+ - name : Upload wheels
69
+ uses : actions/upload-artifact@v4
70
+ with :
71
+ name : wheels-macos-${{ matrix.platform.target }}
72
+ path : dist
73
+
74
+ sdist :
75
+ runs-on : ubuntu-latest
76
+ steps :
77
+ - uses : actions/checkout@v4
78
+ - name : Build sdist
79
+ uses : PyO3/maturin-action@v1.44.0
80
+ with :
81
+ command : sdist
82
+ args : --out dist
83
+ - name : Upload sdist
84
+ uses : actions/upload-artifact@v4
85
+ with :
86
+ name : wheels-sdist
87
+ path : dist
88
+
89
+ release :
90
+ name : Release
91
+ runs-on : ubuntu-latest
92
+ environment : release
93
+ if : ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
94
+ needs : [linux, macos, sdist]
95
+ permissions :
96
+ # Use to sign the release artifacts
97
+ id-token : write
98
+ # Used to upload release artifacts
99
+ contents : write
100
+ # Used to generate artifact attestation
101
+ attestations : write
102
+ steps :
103
+ - uses : actions/download-artifact@v4
104
+ - name : Generate artifact attestation
105
+ uses : actions/attest-build-provenance@v1
106
+ with :
107
+ subject-path : ' wheels-*/*'
108
+ - name : Publish to PyPI
109
+ if : " startsWith(github.ref, 'refs/tags/')"
110
+ uses : PyO3/maturin-action@v1.44.0
111
+ with :
112
+ command : upload
113
+ args : --non-interactive --skip-existing wheels-*/*
0 commit comments