@@ -53,21 +53,24 @@ jobs:
5353 matrix :
5454 image : [windows-2022, windows-11-arm]
5555 steps :
56+ - name : ' install build prereqs'
57+ if : ${{ steps.cache-perl-win32-pkgs.outputs.cache-hit != 'true' }}
58+ uses : msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2
59+ with :
60+ msystem : msys
61+ install : gcc make
62+
63+ - name : ' perl version'
64+ run : perl --version | tee "$GITHUB_WORKSPACE"/perlversion
65+
5666 - name : ' cache perl packages'
5767 uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
5868 id : cache-perl-win32-pkgs
5969 env :
6070 cache-name : cache-perl-win32-pkgs
6171 with :
6272 path : C:\perl-win32-pkgs
63- key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}
64-
65- - name : ' install build prereqs'
66- if : ${{ steps.cache-perl-win32-pkgs.outputs.cache-hit != 'true' }}
67- uses : msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2
68- with :
69- msystem : msys
70- install : gcc make
73+ key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}-${{ hashFiles('perlversion') }}
7174
7275 - name : ' build perl packages'
7376 if : ${{ steps.cache-perl-win32-pkgs.outputs.cache-hit != 'true' }}
@@ -281,7 +284,7 @@ jobs:
281284 - run : git config --global core.autocrlf input
282285 shell : pwsh
283286
284- - uses : msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2
287+ - uses : msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2
285288 if : ${{ matrix.sys == 'msys' }}
286289 with :
287290 msystem : ${{ matrix.sys }}
@@ -297,7 +300,7 @@ jobs:
297300 libpsl-devel
298301 ${{ matrix.install }}
299302
300- - uses : msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2
303+ - uses : msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2
301304 if : ${{ matrix.sys != 'msys' }}
302305 with :
303306 msystem : ${{ matrix.sys }}
@@ -422,6 +425,14 @@ jobs:
422425 mv bld/tests/unit/.libs/*.exe bld/tests/unit || true
423426 fi
424427
428+ - name : ' install test prereqs'
429+ if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
430+ timeout-minutes : 5
431+ run : |
432+ /usr/bin/pacman --noconfirm --noprogressbar --sync --needed openssh
433+ /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true
434+ perl --version | tee "$GITHUB_WORKSPACE"/perlversion
435+
425436 - name : ' cache perl packages'
426437 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' && matrix.sys != 'msys' }}
427438 uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
@@ -430,33 +441,28 @@ jobs:
430441 cache-name : cache-perl-win32-pkgs
431442 with :
432443 path : C:\perl-win32-pkgs
433- key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}
444+ key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}-${{ hashFiles('perlversion') }}
434445
435446 - name : ' install test prereqs perl'
436447 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
437448 timeout-minutes : 5
438449 run : &perl-win32-pkgs-install |
450+ perl --version
439451 if [ -d /c/perl-win32-pkgs ]; then
440- cd /c/perl-win32-pkgs
441- cd Win32-Process-0.17
452+ pushd /c/perl-win32-pkgs
453+ pushd Win32-Process-0.17
442454 install -D blib/arch/auto/Win32/Process/Process.dll /usr/lib/perl5/site_perl/auto/Win32/Process/Process.dll
443455 install -D blib/lib/Win32/Process.pm /usr/lib/perl5/site_perl/Win32/Process.pm
444- cd ..
445- cd Win32-Process-List-0.09
456+ popd
457+ pushd Win32-Process-List-0.09
446458 install -D blib/arch/auto/Win32/Process/List/List.dll /usr/lib/perl5/site_perl/auto/Win32/Process/List/List.dll
447459 install -D blib/lib/auto/Win32/Process/List/autosplit.ix /usr/lib/perl5/site_perl/auto/Win32/Process/List/autosplit.ix
448460 install -D blib/lib/Win32/Process/List.pm /usr/lib/perl5/site_perl/Win32/Process/List.pm
449461 install -D blib/lib/Win32/Process/processes.pl /usr/lib/perl5/site_perl/Win32/Process/processes.pl
450- cd ..
451- cd ..
462+ popd
463+ popd
452464 fi
453-
454- - name : ' install test prereqs'
455- if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
456- timeout-minutes : 5
457- run : |
458- /usr/bin/pacman --noconfirm --noprogressbar --sync --needed openssh
459- /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true
465+ perl -MWin32::Process -MWin32::Process::List -e 1 && echo '! Modules loading OK.' || echo '! Failed to load modules.'
460466
461467 - name : ' run tests'
462468 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
@@ -554,7 +560,7 @@ jobs:
554560 tflags : ' skipall'
555561 fail-fast : false
556562 steps :
557- - uses : msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2
563+ - uses : msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2
558564 with :
559565 msystem : ${{ matrix.dir }}
560566 release : false
@@ -649,6 +655,14 @@ jobs:
649655 PATH="/d/my-cache/${MATRIX_DIR}/bin:$PATH"
650656 cmake --build bld --target testdeps
651657
658+ - name : ' install test prereqs'
659+ if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
660+ timeout-minutes : 5
661+ run : |
662+ /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true
663+ python3 -m pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary impacket
664+ perl --version | tee "$GITHUB_WORKSPACE"/perlversion
665+
652666 - name : ' cache perl packages'
653667 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
654668 uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
@@ -657,20 +671,13 @@ jobs:
657671 cache-name : cache-perl-win32-pkgs
658672 with :
659673 path : C:\perl-win32-pkgs
660- key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}
674+ key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}-${{ hashFiles('perlversion') }}
661675
662676 - name : ' install test prereqs perl'
663677 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
664678 timeout-minutes : 5
665679 run : *perl-win32-pkgs-install
666680
667- - name : ' install test prereqs'
668- if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
669- timeout-minutes : 5
670- run : |
671- /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true
672- python3 -m pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary impacket
673-
674681 - name : ' run tests'
675682 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
676683 timeout-minutes : 10
@@ -889,7 +896,7 @@ jobs:
889896
890897 fail-fast : false
891898 steps :
892- - uses : msys2/setup-msys2@40677d36a502eb2cf0fb808cc9dec31bf6152638 # v2
899+ - uses : msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2
893900 with :
894901 msystem : ${{ matrix.arch == 'arm64' && 'clangarm64' || 'ucrt64' }}
895902 release : ${{ contains(matrix.image, 'arm') }}
@@ -1028,21 +1035,6 @@ jobs:
10281035 timeout-minutes : 10
10291036 run : cmake --build bld --config "${MATRIX_TYPE}" --parallel 5 --target testdeps
10301037
1031- - name : ' cache perl packages'
1032- if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
1033- uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
1034- id : cache-perl-win32-pkgs
1035- env :
1036- cache-name : cache-perl-win32-pkgs
1037- with :
1038- path : C:\perl-win32-pkgs
1039- key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}
1040-
1041- - name : ' install test prereqs perl'
1042- if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
1043- timeout-minutes : 5
1044- run : *perl-win32-pkgs-install
1045-
10461038 - name : ' install test prereqs'
10471039 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
10481040 timeout-minutes : 5
@@ -1066,6 +1058,22 @@ jobs:
10661058 if [ "${MATRIX_IMAGE}" != 'windows-11-arm' ]; then # save 30-60 seconds, to counteract the slower test run step
10671059 python3 -m pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary impacket
10681060 fi
1061+ perl --version | tee "$GITHUB_WORKSPACE"/perlversion
1062+
1063+ - name : ' cache perl packages'
1064+ if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
1065+ uses : actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
1066+ id : cache-perl-win32-pkgs
1067+ env :
1068+ cache-name : cache-perl-win32-pkgs
1069+ with :
1070+ path : C:\perl-win32-pkgs
1071+ key : ${{ runner.os }}-${{ runner.arch }}-build-${{ env.cache-name }}-${{ hashFiles('perlversion') }}
1072+
1073+ - name : ' install test prereqs perl'
1074+ if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
1075+ timeout-minutes : 5
1076+ run : *perl-win32-pkgs-install
10691077
10701078 - name : ' run tests'
10711079 if : ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }}
0 commit comments