summaryrefslogtreecommitdiffstats
path: root/test/integration-test-wrapper.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* test: Drop sandbox() from integration test wrapperDaan De Meyer3 days1-21/+9
| | | | | | 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.
* test: Only move journal file if we didn't just unlink itDaan De Meyer4 days1-2/+1
|
* test: Fix bug in integration test wrapperDaan De Meyer5 days1-1/+1
|
* test: Move StateDirectory= directive into dropinDaan De Meyer8 days1-0/+1
| | | | | | | 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.
* test: Don't register machines with machined unless we're in interactive modeDaan De Meyer8 days1-1/+1
|
* test: Add option to save in progress test journals to /tmpDaan De Meyer8 days1-1/+11
| | | | | | | | | | | 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.
* tree-wide: Fix python formattingDaan De Meyer8 days1-3/+3
| | | | | The new release of ruff formats a few more things which causes linter failures in CI so let's fix those formatting nits.
* test: Only plug in integration-test-setup.sh in interactive modeDaan De Meyer9 days1-0/+9
| | | | | | 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.
* mkosi: Migrate more deprecated optionsDaan De Meyer12 days1-4/+3
|
* test: extract sanitizer reports from journalYu Watanabe2024-12-101-2/+132
|
* test: Set kernel loglevel to INFO when running tests unattendedDaan De Meyer2024-12-081-0/+1
| | | | | | | 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.
* test: Implement TEST_PREFER_QEMU and use it in one of the mkosi jobsDaan De Meyer2024-12-051-1/+1
| | | | | | | | | | | 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.
* ci: Implement coverage on top of mkosiDaan De Meyer2024-12-051-25/+171
|
* test: Dump coredumps from journal in the integration test wrapperDaan De Meyer2024-11-251-37/+89
| | | | Fixes #35277
* test: Fix typing errors in integration-test-wrapper.pyDaan De Meyer2024-11-241-2/+3
|
* test: Format integration-test-wrapper.pyDaan De Meyer2024-11-241-63/+77
|
* integration-test-wrapper: Remove unneeded format stringsDaan De Meyer2024-11-241-2/+2
|
* mkosi: mark test as skipped when QEMU crashesLuca Boccassi2024-10-081-0/+8
| | | | | | 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: fix TEST_SKIP for test cases with subtestsLuca Boccassi2024-09-111-3/+4
| | | | | | | 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
* test: Set show_status=errorDaan De Meyer2024-08-281-1/+1
| | | | | | 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.
* tests: Don't override QemuKvm= value if TEST_NO_KVM=0Daan De Meyer2024-08-201-1/+1
| | | | | 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.
* test: add TEST_SKIP to mkosi integration test wrapperLuca Boccassi2024-08-151-0/+4
| | | | Takes a space-separate list of test names, allows to skip one or more tests
* test: Implement TEST_SHELL for mkosi based test runnerDaan De Meyer2024-08-051-9/+19
| | | | | TEST_SHELL can be used to get a shell in the integration test environment without actually immediately starting the test.
* test: Don't mount build sources into image when running non-interactivelyDaan De Meyer2024-07-291-0/+1
|
* mkosi: Adapt configuration to take into account configuration reworkDaan De Meyer2024-07-091-4/+2
| | | | | | | | | | | | | | | | | 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.
* test: pull in multi-user.target explicitlyDaan De Meyer2024-06-281-0/+6
| | | | | 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.
* mkosi: add support for TEST_SAVE_JOURNAL to integration test wrapperLuca Boccassi2024-06-251-4/+5
| | | | Same variable and values as supported by the shell suite
* test: support TEST_NO_QEMU in mkosi integration wrapperLuca Boccassi2024-06-171-0/+4
| | | | | | | 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.
* test: support TEST_NO_KVMLuca Boccassi2024-06-171-0/+1
| | | | | The shell integration suite allows to manually deselect KVM, so suppor the same env var for the same purpose in python.
* test: drop obsolete commentLuca Boccassi2024-06-171-4/+0
| | | | | We want to keep various logic here instead of mkosi, so drop the temporary comment
* Revert "test: Run end.sh when running integration tests with mkosi"Luca Boccassi2024-06-031-1/+0
| | | | | | | | | | | | | 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.
* test: Run end.sh when running integration tests with mkosiDaan De Meyer2024-06-021-0/+1
|
* test: Run tests that don't need a vm in systemd-nspawnDaan De Meyer2024-05-291-1/+2
| | | | | If we're not running the test as root, stick to using a virtual machine, as mkosi can't do rootless nspawn yet.
* meson: Look up mkosi onceDaan De Meyer2024-05-271-2/+3
|
* test: Enable TEST-08-INITRD on mkosiDaan De Meyer2024-05-151-3/+3
|
* test: Ignore configure scripts in minimal imagesDaan De Meyer2024-05-141-1/+1
| | | | | These are always aimed at the system image so ignore any specified configure scripts in the minimal images.
* test: Generate basic testsuite services with mesonDaan De Meyer2024-05-141-6/+4
| | | | | Most of these are identical, let's just generate from a meson template.
* test: Simplify argument/variable namesDaan De Meyer2024-05-141-9/+9
|
* test: Rename testsuite-XX units to match test nameDaan De Meyer2024-05-141-3/+2
| | | | | | | 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.
* test: Add infra to mark integration tests as slowDaan De Meyer2024-05-071-4/+9
| | | | | | 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.
* ci: Print a helpful link to download and view a failed test's journalDaan De Meyer2024-05-071-9/+28
|
* test: Don't keep journals for skipped testsDaan De Meyer2024-05-071-15/+20
| | | | Let's make sure we don't save journals for tests that were skipped.
* test: Default to linux qemu firmwareDaan De Meyer2024-05-061-0/+2
| | | | | | | | | | 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.
* test: Always shutdown on test success in mkosiDaan De Meyer2024-05-061-3/+3
| | | | | | | | | | | 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.
* test: Use MESON_TEST_ITERATION if availableDaan De Meyer2024-05-061-2/+3
| | | | | | 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.
* test: Pass through test matching environment variables to the mkosi VMDaan De Meyer2024-05-061-0/+16
|
* test: Formatting fixesDaan De Meyer2024-05-061-1/+1
|
* meson: Remove --debug from mkosi argumentsDaan De Meyer2024-05-051-1/+0
| | | | | 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: Make journal storage configurable per test and make persistent for ↵Daan De Meyer2024-04-301-1/+2
| | | | | | TEST-09-JOURNAL Also fix a bug in the logic since it's 'volatile' and not 'runtime'.
* mkosi: Use systemd.crash_action=poweroff in integration testsDaan De Meyer2024-04-301-4/+1
| | | | | Some integration tests expect to be able to reboot so switch to using the new systemd.crash_action=poweroff instead.