From 3656d0115582a6b634050d2c72741aa09d4f69d5 Mon Sep 17 00:00:00 2001 From: Armin Samii Date: Thu, 11 Jul 2024 14:57:04 -0400 Subject: [PATCH] debugging info in golden hash file --- .github/actions/sha-of-zip.bat | 7 ++++--- .github/actions/sha-of-zip.sh | 8 ++++++++ .github/workflows/release.yml | 10 +++++----- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/actions/sha-of-zip.bat b/.github/actions/sha-of-zip.bat index 5ccc7262d..281911594 100644 --- a/.github/actions/sha-of-zip.bat +++ b/.github/actions/sha-of-zip.bat @@ -58,8 +58,9 @@ powershell -Command "& {[IO.File]::WriteAllText(\"%HASHFILE_SORTED%\", $([IO.Fil :: echo the final hash C:\Windows\System32\certutil.exe -hashfile %HASHFILE_SORTED% SHA%SHA_A% | findstr /v ":" -:: For debugging, enable printing the file-by-file hash -:: echo File-by-file hash -:: type "%HASHFILE_SORTED%" +:: For easier debugging, print the file-by-file hash +echo ########## +echo This checksum was created by a SHA-%SHA_A% of the following file, after removing the filenames and sorting by their SHAs: +sort "%HASHFILE_SORTED%" endlocal diff --git a/.github/actions/sha-of-zip.sh b/.github/actions/sha-of-zip.sh index cd59b680d..a757a974c 100755 --- a/.github/actions/sha-of-zip.sh +++ b/.github/actions/sha-of-zip.sh @@ -15,7 +15,9 @@ parentPath=$( cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P ) # Make a temporary directory to extract zip, and a temporary file to hold SHAs tempDirectory=$(mktemp -d) tempAllChecksumsFile=$(mktemp) +tempChecksumDebugInfoFile=$(mktemp) touch $tempAllChecksumsFile +touch $tempChecksumDebugInfoFile # Extract the zip unzip -q $zipFilepath -d $tempDirectory 2>/dev/null @@ -25,7 +27,13 @@ cd $tempDirectory for filename in $(find * -type f | sort); do checksum=$($parentPath/../workflows/sha.sh $filename $os $sha_a) echo $checksum >> $tempAllChecksumsFile + echo $filename = $checksum >> $tempChecksumDebugInfoFile done # Echo the checksum of the checksums echo $($parentPath/../workflows/sha.sh $tempAllChecksumsFile $os $sha_a) + +# For easier debugging, print the file-by-file hash +echo "##########" +echo "This checksum was created by a SHA-$sha_a of the following file, after removing the filenames and sorting by their SHAs:" +cat $tempChecksumDebugInfoFile | sort diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3dbaf36c8..a1cfb7c79 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,11 +5,11 @@ on: types: [ published ] schedule: - cron: '0 12 1,15 * *' # On the 1st and 15th of the month at noon -## To test this workflow without creating a release, uncomment the following and add a branch name (making sure "push" -## is at the same indent level as "release": -# push: -# branches: -# - 'branch-name' +# To test this workflow without creating a release, uncomment the following and add a branch name (making sure "push" +# is at the same indent level as "release": + push: + branches: + - 'feature/golden-hash-debugging' jobs: release: