sudo: add test-version.sh and stop running sudo in tests

PKG_VERSION substitutes p->_p (1.9.17_p2) for a valid apk version, but the
binaries print the real 1.9.17p2, so the generic per-executable version
probe reports "no executables provided version" and fails. Add a
test-version.sh that matches the version string compiled into the binary.

Executing sudo under QEMU emulation (e.g. mips_24kc) hangs indefinitely, so
neither test-version.sh nor test.sh runs it any more: the version is read
from the binary and test.sh only checks the installed files.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
This commit is contained in:
Alexandru Ardelean authored and Alexandru Ardelean committed 2026-08-10 20:17:56 +03:00
1 parent bfb4cce23a
commit 8c8875c1f6
2 files changed
+25 -3

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
#!/bin/sh
# shellcheck shell=busybox
# PKG_VERSION substitutes p->_p for a valid apk version (1.9.17_p2); the binary
# embeds the real 1.9.17p2. Executing sudo just to read its version hangs under
# QEMU emulation (e.g. mips_24kc), so match the version string compiled into the
# binary instead of running it.
case "$1" in
sudo)
grep -aqF "$(echo "$2" | tr -d '_')" /usr/bin/sudo
;;
*)
echo "Untested package: $1" >&2
exit 1
;;
esac
Regular → Executable
+8 -3
View File
@@ -1,7 +1,12 @@
#!/bin/sh
# sudo hangs when executed under QEMU emulation (e.g. mips_24kc), so verify the
# installed files rather than running it. The version is checked in
# test-version.sh against the string compiled into the binary.
case "$1" in
sudo)
sudo --version | grep "${2//_p/p}"
;;
sudo)
[ -x /usr/bin/sudo ] || { echo "FAIL: /usr/bin/sudo missing"; exit 1; }
[ -x /usr/sbin/visudo ] || { echo "FAIL: /usr/sbin/visudo missing"; exit 1; }
[ -f /etc/sudoers ] || { echo "FAIL: /etc/sudoers missing"; exit 1; }
;;
esac