From 7c6fa5bf168ec7776910ba9ca6e638f5449bd1d1 Mon Sep 17 00:00:00 2001 From: Frantisek Sumsal Date: Tue, 16 May 2023 22:41:03 +0200 Subject: test: move runas() to the shared utility library --- test/units/testsuite-07.main-PID-change.sh | 9 +++------ test/units/testsuite-43.sh | 9 +++------ test/units/testsuite-58.sh | 7 ++----- test/units/util.sh | 6 ++++++ 4 files changed, 14 insertions(+), 17 deletions(-) (limited to 'test') diff --git a/test/units/testsuite-07.main-PID-change.sh b/test/units/testsuite-07.main-PID-change.sh index da23032d1e..6d302452af 100755 --- a/test/units/testsuite-07.main-PID-change.sh +++ b/test/units/testsuite-07.main-PID-change.sh @@ -5,6 +5,9 @@ set -o pipefail # Test changing the main PID +# shellcheck source=test/units/util.sh +. "$(dirname "$0")"/util.sh + systemd-analyze log-level debug # The main service PID should be the parent bash process @@ -166,12 +169,6 @@ test "$(systemctl show -P Result test-true.scope)" = success # Test that user scope units work as well -runas() { - declare userid=$1 - shift - XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@" -} - systemctl start user@4711.service runas testuser systemd-run --scope --user --unit test-true.scope /bin/true test "$(systemctl show -P Result test-true.scope)" = success diff --git a/test/units/testsuite-43.sh b/test/units/testsuite-43.sh index ae979d734b..f9819f2c05 100755 --- a/test/units/testsuite-43.sh +++ b/test/units/testsuite-43.sh @@ -3,13 +3,10 @@ set -eux set -o pipefail -systemd-analyze log-level debug +# shellcheck source=test/units/util.sh +. "$(dirname "$0")"/util.sh -runas() { - declare userid=$1 - shift - XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@" -} +systemd-analyze log-level debug runas testuser systemd-run --wait --user --unit=test-private-users \ -p PrivateUsers=yes -P echo hello diff --git a/test/units/testsuite-58.sh b/test/units/testsuite-58.sh index 86c56a24f8..ecb376476a 100755 --- a/test/units/testsuite-58.sh +++ b/test/units/testsuite-58.sh @@ -3,11 +3,8 @@ set -eux set -o pipefail -runas() { - declare userid=$1 - shift - XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@" -} +# shellcheck source=test/units/util.sh +. "$(dirname "$0")"/util.sh if ! command -v systemd-repart &>/dev/null; then echo "no systemd-repart" >/skipped diff --git a/test/units/util.sh b/test/units/util.sh index 4e214251cc..d151c39965 100755 --- a/test/units/util.sh +++ b/test/units/util.sh @@ -74,3 +74,9 @@ get_cgroup_hierarchy() { exit 1 esac } + +runas() { + local userid="${1:?}" + shift + XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@" +} -- cgit v1.2.1