ci: serialize op-host-desktop tests in multiplatform Windows job

Mirror the rust-check.yml fix into the cross-platform host-test step: the
op-host-desktop test binary segfaults on the Windows runner when its native
(skia/DirectWrite) tests run across parallel test-worker threads. Run that
crate single-threaded here too.
This commit is contained in:
Kayshen-X 2026-07-05 22:48:02 +08:00
parent 7439e25f70
commit ce3ba6d527

View file

@ -116,7 +116,13 @@ jobs:
run: cargo test --workspace --target ${{ matrix.target }}
- name: Test (host, macOS / Windows)
if: matrix.cross == false && matrix.check_only != true && runner.os != 'Linux'
run: cargo test --workspace --target ${{ matrix.target }}
# op-host-desktop's tests build native NativeBackends (skia /
# DirectWrite fonts); across cargo's parallel test-worker threads this
# segfaults on the Windows runner (STATUS_ACCESS_VIOLATION). Split it
# out and serialize with --test-threads=1 (matches rust-check.yml).
run: |
cargo test --workspace --exclude op-host-desktop --target ${{ matrix.target }}
cargo test -p op-host-desktop --target ${{ matrix.target }} -- --test-threads=1
# Desktop binary artifact upload is intentionally not wired here yet.
# The real desktop binary lives in the `op-host-desktop` crate; a
# build + upload step can be added once release packaging is finalized.