Skip to content

Commit e7af8a3

Browse files
committed
Add test build
1 parent 7c87aa7 commit e7af8a3

File tree

1 file changed

+187
-0
lines changed

1 file changed

+187
-0
lines changed

.github/workflows/wheels314.yml

Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
---
2+
name: Wheel Builds
3+
on:
4+
push:
5+
branches: [ 'test-cibuildhweel-314' ]
6+
jobs:
7+
rustworkx-core:
8+
name: Publish rustworkx-core
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v4
12+
- uses: dtolnay/rust-toolchain@stable
13+
- name: Run cargo publish
14+
run: |
15+
cd rustworkx-core
16+
cargo publish
17+
env:
18+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
19+
sdist:
20+
name: Build sdist
21+
runs-on: ubuntu-latest
22+
environment: release
23+
permissions:
24+
id-token: write
25+
needs: ["upload_shared_wheels"]
26+
steps:
27+
- uses: actions/checkout@v4
28+
- uses: actions/setup-python@v5
29+
name: Install Python
30+
with:
31+
python-version: '3.10'
32+
- name: Install deps
33+
run: pip install -U setuptools-rust build
34+
- name: Build sdist
35+
run: python -m build --sdist
36+
- uses: actions/upload-artifact@v4
37+
with:
38+
path: ./dist/*
39+
name: sdist-rustworkx
40+
- name: Publish package distributions to PyPI
41+
uses: pypa/gh-action-pypi-publish@release/v1
42+
build_wheels:
43+
name: Build wheels on ${{ matrix.os }}
44+
runs-on: ${{ matrix.os }}
45+
environment: release
46+
strategy:
47+
fail-fast: false
48+
matrix:
49+
os: [ubuntu-latest, windows-latest, macos-13, macos-14, ubuntu-24.04-arm]
50+
steps:
51+
- uses: actions/checkout@v4
52+
- uses: actions/setup-python@v5
53+
name: Install Python
54+
with:
55+
python-version: '3.10'
56+
- uses: dtolnay/rust-toolchain@stable
57+
- name: Install cibuildwheel
58+
run: |
59+
python -m pip install -U --group releaseinfra
60+
- name: Build wheels
61+
run: |
62+
python -m cibuildwheel --output-dir wheelhouse
63+
- uses: actions/upload-artifact@v4
64+
with:
65+
path: ./wheelhouse/*.whl
66+
name: shared-wheel-builds-${{ matrix.os }}
67+
upload_shared_wheels:
68+
name: Upload shared build wheels
69+
runs-on: ubuntu-latest
70+
environment: release
71+
permissions:
72+
id-token: write
73+
needs: ["build_wheels", "build-win32-wheels"]
74+
steps:
75+
- uses: actions/download-artifact@v4
76+
with:
77+
pattern: shared-wheel-builds-*
78+
merge-multiple: true
79+
path: deploy
80+
- name: Publish package distributions to PyPI
81+
uses: pypa/gh-action-pypi-publish@release/v1
82+
with:
83+
packages-dir: deploy
84+
build_wheels_ppc64le:
85+
name: Build wheels on ${{ matrix.os }}
86+
runs-on: ${{ matrix.os }}
87+
environment: release
88+
permissions:
89+
id-token: write
90+
strategy:
91+
fail-fast: false
92+
matrix:
93+
os: [ubuntu-latest]
94+
steps:
95+
- uses: actions/checkout@v4
96+
- uses: actions/setup-python@v5
97+
name: Install Python
98+
with:
99+
python-version: '3.10'
100+
- uses: dtolnay/rust-toolchain@stable
101+
- name: Set up QEMU
102+
uses: docker/setup-qemu-action@v2
103+
with:
104+
platforms: all
105+
- name: Install cibuildwheel
106+
run: |
107+
python -m pip install -U --group releaseinfra
108+
- name: Build wheels
109+
run: |
110+
python -m cibuildwheel --output-dir wheelhouse
111+
env:
112+
CIBW_SKIP: cp36-* cp37-* pp* *win32 *musl*
113+
CIBW_ARCHS_LINUX: ppc64le
114+
- uses: actions/upload-artifact@v4
115+
with:
116+
path: ./wheelhouse/*.whl
117+
name: wheel-builds-ppc64le
118+
- name: Publish package distributions to PyPI
119+
uses: pypa/gh-action-pypi-publish@release/v1
120+
with:
121+
packages-dir: wheelhouse/
122+
build_wheels_s390x:
123+
name: Build wheels on ${{ matrix.os }}
124+
runs-on: ${{ matrix.os }}
125+
environment: release
126+
permissions:
127+
id-token: write
128+
strategy:
129+
fail-fast: false
130+
matrix:
131+
os: [ubuntu-latest]
132+
steps:
133+
- uses: actions/checkout@v4
134+
- uses: actions/setup-python@v5
135+
name: Install Python
136+
with:
137+
python-version: '3.10'
138+
- uses: dtolnay/rust-toolchain@stable
139+
- name: Set up QEMU
140+
uses: docker/setup-qemu-action@v2
141+
with:
142+
platforms: all
143+
- name: Install cibuildwheel
144+
run: |
145+
python -m pip install -U --group releaseinfra
146+
- name: Build wheels
147+
run: |
148+
python -m cibuildwheel --output-dir wheelhouse
149+
env:
150+
CIBW_SKIP: cp36-* cp37-* pp* *win32 *musl*
151+
CIBW_ARCHS_LINUX: s390x
152+
- uses: actions/upload-artifact@v4
153+
with:
154+
path: ./wheelhouse/*.whl
155+
name: wheel-builds-s390x
156+
- name: Publish package distributions to PyPI
157+
uses: pypa/gh-action-pypi-publish@release/v1
158+
with:
159+
packages-dir: wheelhouse/
160+
build-win32-wheels:
161+
name: Build wheels on win32
162+
runs-on: windows-latest
163+
environment: release
164+
steps:
165+
- uses: actions/checkout@v4
166+
- uses: actions/setup-python@v5
167+
name: Install Python
168+
with:
169+
python-version: '3.10'
170+
architecture: 'x86'
171+
- uses: dtolnay/rust-toolchain@stable
172+
with:
173+
targets: i686-pc-windows-msvc
174+
- name: Force win32 rust
175+
run: rustup default stable-i686-pc-windows-msvc
176+
- name: Install cibuildwheel
177+
run: |
178+
python -m pip install -U --group releaseinfra
179+
- name: Build wheels
180+
run: |
181+
python -m cibuildwheel --output-dir wheelhouse
182+
env:
183+
CIBW_SKIP: cp36-* cp37-* pp* *amd64 *musl*
184+
- uses: actions/upload-artifact@v4
185+
with:
186+
path: ./wheelhouse/*.whl
187+
name: shared-wheel-builds-win32

0 commit comments

Comments
 (0)