Prevent testsuite runs from non-root users.

master
Harald Hoyer 2012-07-31 13:46:51 +02:00
parent 47b8f66ced
commit 1f524c4544
3 changed files with 12 additions and 1 deletions

View File

@ -156,7 +156,8 @@ syncheck:
done;exit $$ret

check: all syncheck
$(MAKE) -C test check
@[ "$$EUID" == "0" ] || { echo "'check' must be run as root! Please use 'sudo'."; exit 1; }
@$(MAKE) -C test check

testimage: all
./dracut.sh -l -a debug -f test-$(shell uname -r).img $(shell uname -r)

View File

@ -1,6 +1,7 @@
.PHONY: all check clean

check:
@[ "$$EUID" == "0" ] || { echo "'check' must be run as root! Please use 'sudo'."; exit 1; }
@for i in TEST-[0-9]*; do \
[ -d $$i ] || continue ; \
[ -f $$i/Makefile ] || continue ; \

View File

@ -24,14 +24,22 @@ function SETCOLOR_WARNING() { echo -en '\033[0;33m'; }
# terminal sequence to reset to the default color.
function SETCOLOR_NORMAL() { echo -en '\033[0;39m'; }

check_root() {
if (( $EUID != 0 )); then
SETCOLOR_FAILURE; echo "Tests must be run as root! Please use 'sudo'."; SETCOLOR_NORMAL
exit 1
fi
}

while (($# > 0)); do
case $1 in
--run)
check_root
echo "TEST RUN: $TEST_DESCRIPTION"
test_check && test_run
exit $?;;
--setup)
check_root
echo "TEST SETUP: $TEST_DESCRIPTION"
test_check && test_setup
exit $?;;
@ -42,6 +50,7 @@ while (($# > 0)); do
rm -f .testdir
exit $?;;
--all)
check_root
echo -n "TEST: $TEST_DESCRIPTION ";
if ! test_check 2&>test.log ; then
SETCOLOR_WARNING