Skip to content

Commit e64b23c

Browse files
committed
Add armv7 wheel testing on armv6
1 parent c52393d commit e64b23c

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

.github/workflows/build-debian-multiarch.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,3 +95,59 @@ jobs:
9595
export SDL_VIDEODRIVER=dummy
9696
export SDL_AUDIODRIVER=disk
9797
python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300
98+
99+
# Upload the generated files under github actions assets section
100+
- name: Upload dist
101+
uses: actions/upload-artifact@v4
102+
with:
103+
name: pygame-multiarch-dist
104+
path: ~/artifacts/*.whl
105+
106+
# test wheels built on armv7 on armv6. Why?
107+
# because piwheels expects the same armv7 wheel to work on both armv7 and armv6
108+
test-armv7-on-armv6:
109+
needs: build-multiarch
110+
name: Debian (Bullseye - 11) [build - armv7, test - armv6]
111+
runs-on: ubuntu-22.04
112+
steps:
113+
- name: Download all multiarch artifacts
114+
uses: actions/download-artifact@v4
115+
with:
116+
name: pygame-multiarch-dist
117+
path: ~/artifacts_tmp
118+
119+
- name: Put renamed arm wheel in artifacts
120+
run: |
121+
mkdir -p ~/artifacts
122+
cd ~/artifacts
123+
cp ~/artifacts_tmp/*-linux_armv7l.whl .
124+
for f in *; do
125+
mv "$f" "${f//armv7l/armv6l}"
126+
done
127+
128+
- name: Test armv7 wheel on armv6
129+
uses: uraimo/[email protected]
130+
with:
131+
arch: armv6
132+
distro: bullseye
133+
134+
# Mount the artifacts directory as /artifacts in the container
135+
dockerRunArgs: --volume ~/artifacts:/artifacts
136+
137+
# The shell to run commands with in the container
138+
shell: /bin/sh
139+
140+
# Install runtime dependencies (no need for dev dependencies)
141+
install: |
142+
apt-get update --fix-missing
143+
apt-get install libsdl2-2.0-0 libsdl2-image-2.0-0 libsdl2-mixer-2.0-0 libsdl2-ttf-2.0-0 libfreetype6 libportmidi0 fontconfig -y
144+
apt-get install python3-pip -y
145+
146+
# Install wheel and run unit tests
147+
run: |
148+
echo "\nInstalling wheel\n"
149+
pip3 install --no-index --pre --find-links /artifacts pygame-ce
150+
echo "\nRunning tests\n"
151+
export SDL_VIDEODRIVER=dummy
152+
export SDL_AUDIODRIVER=disk
153+
python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300

0 commit comments

Comments
 (0)