| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
With the latest changes, this is not required anymore as mkosi sandbox
will set up the proper $PATH to make sure the executables from the build
directory are used.
|
| |
|
| |
|
|
|
|
|
|
|
| |
The integration-test-setup calls require StateDirectory= but some
tests override the test unit used which then won't have StateDirectory=
so let's move StateDirectory= into the dropin as well to avoid this
issue.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The journal isn't the best at being fast, especially when writing
to disk and not to memory, which can cause integration tests to
grind to a halt on beefy systems due to all the systemd-journal-remote
instances not being able to write journal entries to disk fast enough.
Let's introduce an option to allow writing in progress test journals
to use /tmp which can be used on beefy systems with lots of memory to
speed things up.
|
|
|
|
|
| |
The new release of ruff formats a few more things which causes linter
failures in CI so let's fix those formatting nits.
|
|
|
|
|
|
| |
If we're not running interactively, there's no point in the features
from integration-test-setup.sh which are intended for interactive
development and debugging so lets skip adding it in that case.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This makes sure all kernel log messages are logged to the console.
This should be helpful during shutdown to detect possible issues with
journald when the logs can't be written to the journal itself anymore
but are written to kmsg.
|
|
|
|
|
|
|
|
|
|
|
| |
We want to make sure the integration tests that don't require qemu
can run successfully both in an nspawn container and in a qemu VM.
So let's add one more knob TEST_PREFER_QEMU=1 to run jobs that normally
require nspawn in qemu instead.
Running these tests in qemu is also possible by not running as root but
that's very implicit so we add an explicit knob instead to make it explicit
that we want to run these in qemu instead of nspawn.
|
| |
|
|
|
|
| |
Fixes #35277
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
On Ubuntu/Debian infrastructure QEMU crashes a lot, so mark the test
as skipped in that case as there's nothing we can do about it and
we shouldn't mark runs as failed
|
|
|
|
|
|
|
| |
TEST-64-UDEV-STORAGE is invoked with the subtest appended, so TEST_SKIP=TEST-64-UDEV-STORAGE
does not work. Fix it by using TEST_SKIP as a partial match.
Follow-up for ddc91af4eaa32511f92c83b2c24d9cc0425fd5f5
|
|
|
|
|
|
| |
The TEST-64-UDEV-STORAGE tests fail before we even start the test.
Let's set show_status=error to get more information when those failures
happen.
|
|
|
|
|
| |
Let's disable KVM if TEST_NO_KVM=1 is set but let's not specify anything
if it's not set so the QemuKvm= setting from mkosi.conf is used.
|
|
|
|
| |
Takes a space-separate list of test names, allows to skip one or more tests
|
|
|
|
|
| |
TEST_SHELL can be used to get a shell in the integration test
environment without actually immediately starting the test.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In https://github.com/systemd/mkosi/pull/2847, the '@' specifier is
removed, CLI arguments take priority over configuration files again
and the "main" image is defined at the top level instead of in
mkosi.images/. Additionally, not every setting from the top level
configuration is inherited by the images in mkosi.images/ anymore,
only settings which make sense to be inherited are inherited.
This commit gets rid of all the usages of '@', moves the "main" image
configuration from mkosi.images/system to the top level and gets rid
of various hacks we had in place to deal with quirks of the old
configuration parsing logic.
We also remove usages of Images= and --append as these options are
removed by the mentioned PR.
|
|
|
|
|
| |
Let's make sure we pull in multi-user.target so that we get a console
when a test fails and we're running meson test with --interactive.
|
|
|
|
| |
Same variable and values as supported by the shell suite
|
|
|
|
|
|
|
| |
Same as the old integration test suite, allow skipping tests that
require qemu.
ppc64el's vsock support doesn't appear to work, so we'll skip it,
as it is already done in the legacy framework.
|
|
|
|
|
| |
The shell integration suite allows to manually deselect KVM, so
suppor the same env var for the same purpose in python.
|
|
|
|
|
| |
We want to keep various logic here instead of mkosi, so drop the
temporary comment
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems this introduced a regression in the CentOS CI;
14:25:58 FAILED TASKS:14:25:58 -------------
14:25:58 TEST-03-JOBS
14:25:58 TEST-52-HONORFIRSTSHUTDOWN
14:25:58 TEST-63-PATH
Revert for now.
This reverts commit da3c6fc55363af2163b4d2613c9951bdaea24810.
|
| |
|
|
|
|
|
| |
If we're not running the test as root, stick to using a virtual
machine, as mkosi can't do rootless nspawn yet.
|
| |
|
| |
|
|
|
|
|
| |
These are always aimed at the system image so ignore any specified
configure scripts in the minimal images.
|
|
|
|
|
| |
Most of these are identical, let's just generate from a meson
template.
|
| |
|
|
|
|
|
|
|
| |
Having these named differently than the test itself mostly creates
unecessary confusion and makes writing logic against the tests harder
so let's rename the testsuite-xx units and scripts to just use the
test name itself.
|
|
|
|
|
|
| |
Some integration tests take much more time than others, let's add
a test param that can be used to configure this and integrate it
with the slow-tests meson option.
|
| |
|
|
|
|
| |
Let's make sure we don't save journals for tests that were skipped.
|
|
|
|
|
|
|
|
|
|
| |
Direct kernel boot results in much faster boot times so let's use
it by default.
We disable it for tests that need to reboot because +-50% of the
time, doing a reboot when using direct kernel boot causes qemu to
hang on reboot. Until we figure that out, let's use UEFI for the
tests that need to reboot.
|
|
|
|
|
|
|
|
|
|
|
| |
When we want to get an interactive shell in a test that fails because
of a race condition, we might need to run the test a few times with
--repeat before it fails. However, currently, when -i is used, the VM
needs to be shut down manually each time before the next run can start.
Let's always shut down the VM if the test succeeds so that --repeat can
be used with -i to run the test until it fails and then get an interactive
shell in the VM.
|
|
|
|
|
|
| |
This allows running the same test multiple times concurrently with
meson's --repeat option. Proposed upstream but not yet merged:
https://github.com/mesonbuild/meson/pull/13177.
|
| |
|
| |
|
|
|
|
|
| |
The exit status issue for which we introduced this was fixed so
let's remove --debug again to make the meson output less verbose.
|
|
|
|
|
|
| |
TEST-09-JOURNAL
Also fix a bug in the logic since it's 'volatile' and not 'runtime'.
|
|
|
|
|
| |
Some integration tests expect to be able to reboot so switch to using
the new systemd.crash_action=poweroff instead.
|