mirror of
https://github.com/systemd/systemd.git
synced 2024-12-25 01:34:28 +03:00
c89b3e1dfd
Prep work for running the integration tests with meson, which requires tests to exit with 77 to indicate they are skipped. Note this only deals with the easy cases where there's only tests. The hard ones where there's subtests of which only some are skipped are left for another PR.
31 lines
944 B
Bash
Executable File
31 lines
944 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
set -eux
|
|
set -o pipefail
|
|
|
|
if systemd-detect-virt -qc; then
|
|
echo >&2 "This test can't run in a container"
|
|
exit 1
|
|
fi
|
|
|
|
# This test requires systemd to run in the initrd as well, which is not the case
|
|
# for mkinitrd-based initrd (Ubuntu/Debian)
|
|
if [[ "$(systemctl show -P InitRDTimestampMonotonic)" -eq 0 ]]; then
|
|
echo "systemd didn't run in the initrd, skipping the test"
|
|
touch /skipped
|
|
exit 77
|
|
fi
|
|
|
|
# We should've created a mount under /run in initrd (see the other half of the test)
|
|
# that should've survived the transition from initrd to the real system
|
|
test -d /run/initrd-mount-target
|
|
mountpoint /run/initrd-mount-target
|
|
[[ -e /run/initrd-mount-target/hello-world ]]
|
|
|
|
# Copy the prepared shutdown initrd to its intended location. Check the respective
|
|
# test.sh file for details
|
|
mkdir -p /run/initramfs
|
|
cp -r /shutdown-initrd/* /run/initramfs/
|
|
|
|
touch /testok
|