Skip to content

Commit 1569279

Browse files
committed
ci: Check windows manifests for all executables
The other executables have manifests and these should be checked in addition to bitcoind. Skipping fuzz.exe, bench_bitcoin.exe and test_bitcoin-qt.exe as they do not have manifests.
1 parent e1a1b14 commit 1569279

File tree

1 file changed

+32
-8
lines changed

1 file changed

+32
-8
lines changed

.github/workflows/ci.yml

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -268,14 +268,26 @@ jobs:
268268
run: |
269269
cmake --build . -j $NUMBER_OF_PROCESSORS --config Release
270270
271-
- name: Get bitcoind manifest
271+
- name: Check executable manifests
272272
if: matrix.job-type == 'standard'
273273
working-directory: build
274+
shell: pwsh -Command "$PSVersionTable; $PSNativeCommandUseErrorActionPreference = $true; $ErrorActionPreference = 'Stop'; & '{0}'"
274275
run: |
275-
mt.exe -nologo -inputresource:bin/Release/bitcoind.exe -out:bitcoind.manifest
276-
cat bitcoind.manifest
277-
echo
278-
mt.exe -nologo -inputresource:bin/Release/bitcoind.exe -validate_manifest
276+
mt.exe -nologo -inputresource:bin\Release\bitcoind.exe -out:bitcoind.manifest
277+
Get-Content bitcoind.manifest
278+
279+
Get-ChildItem -Filter "bin\Release\*.exe" | ForEach-Object {
280+
$exeName = $_.Name
281+
282+
# Skip as they currently do not have manifests
283+
if ($exeName -eq "fuzz.exe" -or $exeName -eq "bench_bitcoin.exe" -or $exeName -eq "test_bitcoin-qt.exe") {
284+
Write-Host "Skipping $exeName (no manifest present)"
285+
return
286+
}
287+
288+
Write-Host "Checking $exeName"
289+
& mt.exe -nologo -inputresource:$_.FullName -validate_manifest
290+
}
279291
280292
- name: Run test suite
281293
if: matrix.job-type == 'standard'
@@ -377,12 +389,24 @@ jobs:
377389

378390
- *SET_UP_VS
379391

380-
- name: Get bitcoind manifest
381-
shell: pwsh
392+
- name: Check executable manifests
393+
shell: pwsh -Command "$PSVersionTable; $PSNativeCommandUseErrorActionPreference = $true; $ErrorActionPreference = 'Stop'; & '{0}'"
382394
run: |
383395
mt.exe -nologo -inputresource:bin\bitcoind.exe -out:bitcoind.manifest
384396
Get-Content bitcoind.manifest
385-
mt.exe -nologo -inputresource:bin\bitcoind.exe -validate_manifest
397+
398+
Get-ChildItem -Filter "bin\*.exe" | ForEach-Object {
399+
$exeName = $_.Name
400+
401+
# Skip as they currently do not have manifests
402+
if ($exeName -eq "fuzz.exe" -or $exeName -eq "bench_bitcoin.exe") {
403+
Write-Host "Skipping $exeName (no manifest present)"
404+
return
405+
}
406+
407+
Write-Host "Checking $exeName"
408+
& mt.exe -nologo -inputresource:$_.FullName -validate_manifest
409+
}
386410
387411
- name: Run unit tests
388412
# Can't use ctest here like other jobs as we don't have a CMake build tree.

0 commit comments

Comments
 (0)