]> git.ipfire.org Git - thirdparty/systemd.git/commit
test: Make it possible to run the integration tests standalone (#36868)
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Thu, 27 Mar 2025 20:38:00 +0000 (21:38 +0100)
committerGitHub <noreply@github.com>
Thu, 27 Mar 2025 20:38:00 +0000 (21:38 +0100)
commite213ecd4847ea03ec62cb9185e15e43e5a4eb7c5
tree2e7c73f6454d672059fd8d1452a1e087b60956b7
parent72586a971b5ee26b6681fc34ba43c0081dbd94da
parentd9f48358bd177f4ac959444650a589056c3e569e
test: Make it possible to run the integration tests standalone (#36868)

Currently, to run the integration tests, it's still necessary to
install various other build tools besides meson: A compiler, gperf,
libcap, ... which we want to avoid in CI systems where we receive
prebuilt systemd packages and only want to test them. Examples are
Debian's autopkgtest CI and Fedora CI. Let's make it possible for
these systems to run the integration tests without having to install
any other build dependency besides meson by extracting the logic
required to run the integration tests with meson into a separate
subdirectory and adding a standalone top-level meson.build file which
can be used to configure a meson tree with as its only purpose running
the integration tests.

Practically, we do the following:
- all the integration test directories and integration-test-wrapper.py
  are moved from test/ to test/integration-tests/.
- All the installation logic is kept out of test/integration-tests/ or
  any of its subdirectories and moved into test/meson.build instead.
- We add test/integration-tests/standalone/meson.build to run the
  integration tests standalone. This meson file includes
  test/integration-tests via a cute symlink hack to trick meson into
  including a parent directory with subdir().
- Documentation is included on how to use the new standalone mode.
meson.build