Skip to content

Commit c71bba5

Browse files
author
t
committed
ci: add a non-blocking Windows test lane for the shipped CLIs (#228)
We ship `gl` and `git-remote-gitlawb` to Windows users via release.yml but run no Windows tests: pr-checks.yml is ubuntu-only, and the single windows-latest in the repo is the release build step, which never runs `cargo test`. So changes to the shipped Windows CLIs (e.g. the multi-round fetch fix in #192) reach Windows users with zero test runs on Windows. Add a `test-windows` job that runs `cargo test -p gl -p git-remote-gitlawb` on windows-latest with `continue-on-error: true`, mirroring the informational beta lane: a Windows-only failure is visible on the PR but does not block merge. The two crates are the client CLIs and depend on no database, so the job needs no Postgres service (service containers do not run on windows-latest regardless); git is preinstalled on the runner for the real_git_fetch harness. This makes the #[cfg(windows)] regressions from #192 load-bearing instead of never-run. Un-gating the currently #[cfg(unix)] harness tests is the deferred follow-on in #228.
1 parent e14c2d3 commit c71bba5

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

‎.github/workflows/pr-checks.yml‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,3 +216,34 @@ jobs:
216216

217217
- name: Smoke test --version
218218
run: docker run --rm gitlawb-node:ci-test --version
219+
220+
test-windows:
221+
name: test (windows, non-blocking)
222+
runs-on: windows-latest
223+
timeout-minutes: 45
224+
# Non-blocking, mirroring the informational `beta` lane above. We ship `gl`
225+
# and `git-remote-gitlawb` to Windows users (release.yml) with zero Windows
226+
# test coverage, so run their suites here to make Windows-only regressions
227+
# VISIBLE on the PR without gating merge (#228). These two are the client
228+
# CLIs and depend on no database, so no Postgres service is needed (service
229+
# containers do not run on windows-latest regardless). `git` is preinstalled
230+
# on windows-latest, which the real_git_fetch harness relies on.
231+
continue-on-error: true
232+
steps:
233+
- name: Check out repository
234+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
235+
with:
236+
persist-credentials: false
237+
238+
- name: Set up Rust toolchain
239+
uses: dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b # stable
240+
with:
241+
toolchain: stable
242+
243+
- name: Cache cargo
244+
uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2.8.0
245+
with:
246+
key: windows
247+
248+
- name: cargo test (shipped Windows crates)
249+
run: cargo test -p gl -p git-remote-gitlawb

0 commit comments

Comments
 (0)