Browse Source
Run tests on a big-endian platform (s390x) via qemu. The test suite takes ~50m to run so we only trigger it manually.pull/5590/head
1 changed files with 42 additions and 0 deletions
@ -0,0 +1,42 @@
|
||||
name: s390x qemu tests (big-endian) |
||||
|
||||
# The test suite takes ~50m to run so we only trigger it manually |
||||
on: |
||||
release: |
||||
types: [published] |
||||
workflow_dispatch: |
||||
|
||||
concurrency: |
||||
group: ${{ github.workflow }}-${{ github.ref }} |
||||
cancel-in-progress: true |
||||
|
||||
jobs: |
||||
big-endian-qemu: |
||||
runs-on: ubuntu-22.04 |
||||
|
||||
steps: |
||||
- uses: actions/checkout@v3 |
||||
with: |
||||
fetch-depth: 0 |
||||
|
||||
- name: Cache .ccache |
||||
uses: actions/cache@v3 |
||||
with: |
||||
path: .ccache |
||||
key: ${{ github.workflow }}-ccache |
||||
|
||||
- name: Get the qemu container |
||||
run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes |
||||
|
||||
- name: Run tests |
||||
run: > |
||||
docker run --rm --interactive --mount type=bind,source=$(pwd),target=/host s390x/alpine sh -c |
||||
" |
||||
apk add --update-cache g++ ninja cmake ccache sdl2-dev sdl2_image-dev fmt-dev libpng-dev bzip2-dev gtest-dev wget && |
||||
cd /host && |
||||
export CCACHE_DIR=/host/.ccache && |
||||
cmake -S. -Bbuild -G Ninja -DNONET=ON -DNOSOUND=ON -DVERSION_NUM=1.0.0 -DVERSION_SUFFIX=FFFFFFF && |
||||
wget -nv -nc https://github.com/diasurgical/devilutionx-assets/releases/download/v2/spawn.mpq -P build && |
||||
cmake --build build -j $(nproc) && |
||||
ctest --test-dir build --output-on-failure -j $(nproc) |
||||
" |
||||
Loading…
Reference in new issue