Migrate CI to 4-job pipeline with SHA-pinned actions #5

Merged
jcabillot merged 4 commits from feat/gitea-actions-v2 into master 2026-06-09 08:32:26 -04:00
Showing only changes of commit 81f41e98ca - Show all commits
+46
View File
@@ -0,0 +1,46 @@
#!/bin/bash
set -euo pipefail
IMAGE="$1"
FAILED=0
PASSED=0
assert_eq() {
local desc="$1" expected="$2" actual="$3"
if [ "$expected" = "$actual" ]; then
echo "PASS: $desc"
PASSED=$((PASSED + 1))
else
echo "FAIL: $desc (expected $expected, got $actual)"
FAILED=$((FAILED + 1))
fi
}
TMPDIR="$(mktemp -d)"
trap 'rm -rf "$TMPDIR"' EXIT
docker run --rm "$IMAGE" putty --help > "$TMPDIR/output" 2>&1 && RC=0 || RC=$?
assert_eq "putty --help exits cleanly" "0" "$RC"
if [ -s "$TMPDIR/output" ]; then
echo "PASS: putty --help produces output"
PASSED=$((PASSED + 1))
else
echo "FAIL: putty --help produces no output"
FAILED=$((FAILED + 1))
fi
docker run --rm "$IMAGE" puttygen --version > "$TMPDIR/output" 2>&1
if grep -qiE "putty|release|version" "$TMPDIR/output"; then
echo "PASS: puttygen produces recognizable output"
PASSED=$((PASSED + 1))
else
echo "FAIL: puttygen output unrecognized"
FAILED=$((FAILED + 1))
fi
echo ""
echo "$PASSED/$((PASSED + FAILED)) tests passed"
if [ "$FAILED" -gt 0 ]; then
exit 1
fi