Validate collected files for release
Some checks failed
Scorecard supply-chain security / Scorecard analysis (push) Has been cancelled

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
This commit is contained in:
Brad Davidson 2025-12-15 19:01:58 +00:00 committed by Brad Davidson
parent 7806fa6b9c
commit 650fed932d
2 changed files with 45 additions and 0 deletions

View file

@ -180,6 +180,9 @@ jobs:
runs-on: ubuntu-latest
needs: [build-amd64, build-arm64, build-arm, build-airgap]
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Read Prime artifacts secrets
uses: rancher-eio/read-vault-secrets@main
with:
@ -204,6 +207,7 @@ jobs:
- name: "Combine and format sha256sum files"
run: |
cp scripts/airgap/image-list.txt dist/artifacts/k3s-images.txt
for ARCH in amd64 arm64 arm; do
OUTPUT_FILE="./dist/artifacts/sha256sum-${ARCH}.txt"
cat ./dist/artifacts/k3s-airgap-images-${ARCH}*.sha256sum >> "${OUTPUT_FILE}"
@ -216,6 +220,10 @@ jobs:
rm ./dist/artifacts/k3s-${ARCH}.sha256sum # Remove the original file to avoid uploading it
fi
done
- name: Validate Assets for Release
run: |
./scripts/validate-artifacts
- name: Upload Assets to Release
uses: softprops/action-gh-release@v2.2.1

37
scripts/validate-artifacts Executable file
View file

@ -0,0 +1,37 @@
#!/usr/bin/env bash
set -e
shopt -s nullglob
EXPECTED_ARTIFACTS=(
dist/artifacts/k3s
dist/artifacts/k3s-airgap-images-amd64.tar
dist/artifacts/k3s-airgap-images-amd64.tar.gz
dist/artifacts/k3s-airgap-images-amd64.tar.zst
dist/artifacts/k3s-airgap-images-arm.tar
dist/artifacts/k3s-airgap-images-arm.tar.gz
dist/artifacts/k3s-airgap-images-arm.tar.zst
dist/artifacts/k3s-airgap-images-arm64.tar
dist/artifacts/k3s-airgap-images-arm64.tar.gz
dist/artifacts/k3s-airgap-images-arm64.tar.zst
dist/artifacts/k3s-arm64
dist/artifacts/k3s-armhf
dist/artifacts/k3s-images.txt
dist/artifacts/sha256sum-amd64.txt
dist/artifacts/sha256sum-arm.txt
dist/artifacts/sha256sum-arm64.txt
)
CURRENT_ARTIFACTS=(
dist/artifacts/k3s*
dist/artifacts/sha256sum*
)
UNEXPECTED=$(IFS=$'\n'; comm -13 /dev/fd/4 /dev/fd/5 4<<<"${EXPECTED_ARTIFACTS[*]}" 5<<<"${CURRENT_ARTIFACTS[*]}")
MISSING=$(IFS=$'\n'; comm -23 /dev/fd/4 /dev/fd/5 4<<<"${EXPECTED_ARTIFACTS[*]}" 5<<<"${CURRENT_ARTIFACTS[*]}")
if [[ -n "${UNEXPECTED}" ]] || [[ -n "${MISSING}" ]]; then
echo "Unexpected Files: " ${UNEXPECTED}
echo "Missing Files: " ${MISSING}
exit 1
fi