mirror of
https://github.com/systemd/systemd.git
synced 2024-11-01 00:51:24 +03:00
39e1753673
The `dracut_install` is a misnomer, since the systemd integration test suite is based on the original dracut's test suite, and not all the references to dracut has been edited out. Let's fix that.
58 lines
1.7 KiB
Bash
Executable File
58 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
TEST_DESCRIPTION="SELinux tests"
|
|
IMAGE_NAME="selinux"
|
|
TEST_NO_NSPAWN=1
|
|
|
|
# Requirements:
|
|
# Fedora 23
|
|
# selinux-policy-targeted
|
|
# selinux-policy-devel
|
|
|
|
# Check if selinux-policy-devel is installed, and if it isn't bail out early instead of failing
|
|
test -f /usr/share/selinux/devel/include/system/systemd.if || exit 0
|
|
|
|
# shellcheck source=test/test-functions
|
|
. "${TEST_BASE_DIR:?}/test-functions"
|
|
|
|
SETUP_SELINUX=yes
|
|
KERNEL_APPEND="${KERNEL_APPEND:=} selinux=1 security=selinux"
|
|
|
|
test_append_files() {
|
|
(
|
|
local workspace="${1:?}"
|
|
local policy_headers_dir=/usr/share/selinux/devel
|
|
local modules_dir=/var/lib/selinux
|
|
|
|
setup_selinux
|
|
# Make sure we never expand this to "/..."
|
|
rm -rf "${workspace:?}/$modules_dir"
|
|
|
|
if ! cp -ar "$modules_dir" "$workspace/$modules_dir"; then
|
|
dfatal "Failed to copy $modules_dir"
|
|
exit 1
|
|
fi
|
|
|
|
rm -rf "${workspace:?}/$policy_headers_dir"
|
|
inst_dir /usr/share/selinux
|
|
|
|
if ! cp -ar "$policy_headers_dir" "$workspace/$policy_headers_dir"; then
|
|
dfatal "Failed to copy $policy_headers_dir"
|
|
exit 1
|
|
fi
|
|
|
|
mkdir "$workspace/systemd-test-module"
|
|
cp systemd_test.te "$workspace/systemd-test-module"
|
|
cp systemd_test.if "$workspace/systemd-test-module"
|
|
cp systemd_test.fc "$workspace/systemd-test-module"
|
|
image_install -o sesearch
|
|
image_install runcon
|
|
image_install checkmodule semodule semodule_package m4 make load_policy sefcontext_compile
|
|
image_install -o /usr/libexec/selinux/hll/pp # Fedora/RHEL/...
|
|
image_install -o /usr/lib/selinux/hll/pp # Debian/Ubuntu/...
|
|
)
|
|
}
|
|
|
|
do_test "$@"
|