test: Add sane default for TESTENV_ROOT; enable easier independent test runs

Signed-off-by: Jacques de Laval <jacques@de-laval.se>
This commit is contained in:
Jacques de Laval
2021-02-25 17:38:56 +01:00
parent 48b732e53d
commit ea4fe2045d
8 changed files with 17 additions and 14 deletions
+2 -2
View File
@@ -9,8 +9,8 @@ EXTRA_DIST += add-remove-dynamic-service-sub-config/test.sh
EXTRA_DIST += start-stop-service/test.sh
EXTRA_DIST += start-stop-service-sub-config/test.sh
AM_TESTS_ENVIRONMENT = TESTS_ROOT='$(abs_builddir)/test-root/';
AM_TESTS_ENVIRONMENT += export TESTS_ROOT;
AM_TESTS_ENVIRONMENT = TESTENV_ROOT='$(abs_builddir)/test-root/';
AM_TESTS_ENVIRONMENT += export TESTENV_ROOT;
AM_TESTS_ENVIRONMENT += export LD_LIBRARY_PATH;
AM_TESTS_ENVIRONMENT += top_srcdir=$(top_srcdir);
AM_TESTS_ENVIRONMENT += export top_srcdir;
@@ -17,7 +17,7 @@ test_teardown() {
say "Test start $(date)"
cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/
cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/
say "Add a dynamic service in $FINIT_RCSD/service.conf"
texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_RCSD/service.conf"
+1 -1
View File
@@ -17,7 +17,7 @@ test_teardown() {
say "Test start $(date)"
cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/
cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/
say "Add a dynamic service in $FINIT_CONF"
texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_CONF"
+7 -4
View File
@@ -90,16 +90,19 @@ teardown() {
wait
if [ -d "$TESTS_ROOT/var/lock" ]; then
if [ -d "$TESTENV_ROOT/var/lock" ]; then
chmod +r test-root/var/lock
fi
rm -f "$TESTS_ROOT"/running_test.pid
rm -f "$TESTENV_ROOT"/running_test.pid
}
trap teardown EXIT
TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}"
export TESTENV_ROOT
# shellcheck source=/dev/null
. "$TESTS_ROOT/../test.env"
. "$TESTENV_ROOT/../test.env"
TEST_NAME="$(dirname "$0")"
TEST_NAME=${TEST_NAME#*/}
@@ -114,7 +117,7 @@ fi
# shellcheck disable=2086
"$TEST_DIR/testenv_start.sh" finit ${FINIT_ARGS:-} &
finit_ppid=$!
echo "$finit_ppid" > "$TESTS_ROOT"/running_test.pid
echo "$finit_ppid" > "$TESTENV_ROOT"/running_test.pid
>&2 echo "Hint: Execute 'test/testenv_enter.sh' to enter the test namespace"
>&2 echo "finit conf '$FINIT_CONF'"
+1 -1
View File
@@ -17,7 +17,7 @@ test_teardown() {
say "Test start $(date)"
cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/
cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/
say "Add service stanza in $FINIT_RCSD/service.conf"
texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_RCSD/service.conf"
+1 -1
View File
@@ -17,7 +17,7 @@ test_teardown() {
say "Test start $(date)"
cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/
cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/
say "Add service stanza in $FINIT_CONF"
texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_CONF"
+2 -2
View File
@@ -11,7 +11,7 @@ target="$1"
shift
TEST_DIR=$(dirname "$0")
TESTS_ROOT="${TESTS_ROOT:-$(pwd)/${TEST_DIR}/test-root}"
TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}"
nsenter=$(command -v nsenter)
chroot=$(command -v chroot)
@@ -33,4 +33,4 @@ export PATH
--net \
--pid \
-w -t "$target" \
"$chroot" "$TESTS_ROOT" "$@"
"$chroot" "$TESTENV_ROOT" "$@"
+2 -2
View File
@@ -3,7 +3,7 @@
set -eu
TEST_DIR=$(dirname "$0")
TESTS_ROOT="${TESTS_ROOT:-$(pwd)/${TEST_DIR}/test-root}"
TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}"
unshare=$(command -v unshare)
chroot=$(command -v chroot)
@@ -24,4 +24,4 @@ exec "$unshare" \
--mount \
--mount-proc \
--uts --ipc --net \
"$chroot" "$TESTS_ROOT" /bin/chrootsetup.sh "$@"
"$chroot" "$TESTENV_ROOT" /bin/chrootsetup.sh "$@"