Skip to content

Commit d79da8f

Browse files
committed
test.yml: exercise architecture: ucrt64 on every PR
The `test` job of `build-test` is the only PR-time gate that actually runs this Action on a clean Windows runner and pokes at the result; the matrix-based smoke test in `matrix.yml` only fires on manual dispatch. So far that gate has only covered the historical default combination (`flavor: minimal`, `architecture: x86_64`), which means any regression on the new `ucrt64` axis would slip through CI and only surface in a consumer repository. Turn the job into a matrix that adds `architecture: ucrt64` next to the existing `x86_64` row, with `flavor: full` for the UCRT64 entry because that is the only flavor wired up end-to-end at this point (the subset flavors still depend on follow-up work in `build-extra` and on the `ci-artifacts` pipeline of `git-sdk-64`, tracked in git-for-windows/git-sdk-64#117 (comment)). The verification step's previously hard-coded `/mingw64/bin/gcc` becomes `$MINGW_PREFIX/bin/gcc`, with `MINGW_PREFIX` injected from the matrix so it picks up `/mingw64` for the `x86_64` row and `/ucrt64` for the `ucrt64` row. The name follows the MSYS2 ecosystem convention for the per-environment path, which is the same variable the SDK's own shell profile exports. Assisted-by: Opus 4.7 Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
1 parent 9a6accc commit d79da8f

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

.github/workflows/test.yml

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,18 +38,38 @@ jobs:
3838
name: diff.txt
3939
path: diff.txt
4040
test: # make sure the action works on a clean machine without building
41+
strategy:
42+
fail-fast: false
43+
matrix:
44+
include:
45+
- architecture: x86_64
46+
flavor: minimal
47+
mingw_prefix: /mingw64
48+
# `ucrt64` is wired up end-to-end only for `flavor: full` at
49+
# this point (the subset flavors depend on follow-up work in
50+
# `build-extra` and the `ci-artifacts` pipeline of
51+
# `git-sdk-64`), so that is the one combination we can
52+
# meaningfully exercise on every PR.
53+
- architecture: ucrt64
54+
flavor: full
55+
mingw_prefix: /ucrt64
4156
runs-on: windows-latest
4257
steps:
4358
- uses: actions/checkout@v6
4459
- name: Run this Action in-place
4560
uses: ./
61+
with:
62+
flavor: ${{ matrix.flavor }}
63+
architecture: ${{ matrix.architecture }}
4664
- name: Verify that the Bash of Git for Windows' SDK is used
4765
shell: bash
66+
env:
67+
MINGW_PREFIX: ${{ matrix.mingw_prefix }}
4868
run: |
4969
set -ex
5070
test ! -e .tmp
5171
echo "This is the MSYS2 pseudo root: $(cygpath -aw /)"
52-
test "gcc is /mingw64/bin/gcc" = "$(type gcc)"
72+
test "gcc is $MINGW_PREFIX/bin/gcc" = "$(type gcc)"
5373
test "prove is /usr/bin/core_perl/prove" = "$(type prove)"
5474
prove -V
5575
printf '%s\n' \

0 commit comments

Comments
 (0)