Skip to content

Commit 5fbb371

Browse files
committed
.github/workflows/ci.yml: find prove on Windows
As described in commit 8d456a7 of PR git-lfs#5879, we currently depend on the Git for Windows SDK to install a version of the "prove" command from Perl Test::Harness distribution, because we use that command to run our suite of shell tests. However, in our CI jobs on Windows, the SDK does not at present install the "prove" command into a location listed in the PATH environment variable, so these CI jobs having begun failing. This change may be related to the recent migration of the SDK's release artifacts to GitHub from Azure Blobs, as outlined in PR git-for-windows/git-for-windows-automation#109, and is possibly a consequence of PR git-for-windows/build-extra#588. Regardless, the "prove" command is fortunately still included in the "minimal" flavour of the SDK, since it is listed in the manifest for that flavour: https://github.com/git-for-windows/git-sdk-64/blob/f845bb725e56e058a0fbf93aba18c70906a1068e/.sparse/minimal-sdk#L188 We simply need to ensure that the directory in which the command is now located, namely /usr/bin/core_perl, is added to the set of paths in the PATH variable for the Git Bash environment. Note that we only need to add this extra path to PATH when we are running our script/cibuild script, as that runs the default recipe from our t/Makefile file, which in turn executes the "test" recipe, which uses the "prove" command to run and summarize all our shell test scripts.
1 parent 19a879b commit 5fbb371

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,12 @@ jobs:
8888
flavor: minimal
8989
# We install the SDK so as to have access to the msgfmt.exe binary
9090
# from the GNU gettext package.
91-
- run: GOPATH="$HOME/go" PATH="$HOME/go/bin:$PATH" env -u TMPDIR script/cibuild
91+
- run: GOPATH="$HOME/go" PATH="$HOME/go/bin:/usr/bin/core_perl:$PATH" env -u TMPDIR script/cibuild
9292
shell: bash
9393
# We clear the TMPDIR set for Ruby so mktemp and Go use the same
9494
# volume for temporary files.
95+
# We include the /usr/bin/core_perl path in PATH so the Perl prove
96+
# command provided by the SDK can be located.
9597
- run: rm -f commands/mancontent_gen.go
9698
shell: bash
9799
- run: GOPATH="$HOME/go" PATH="$HOME/go/bin:$PATH" make GOARCH=386 -B

0 commit comments

Comments
 (0)