test: Drop --no-rebuild from meson test invocations
With meson 1.7.0, meson won't rebuild the world anymore when running meson test so since meson 1.7.0 is in tumbleweed, debian testing, fedora rawhide and Arch Linux, drop --no-rebuild from the docs since all the default tools trees built by mkosi in the systemd repo will have meson 1.7.0 or newer installed. We keep --no-rebuild in CI because in CI we run with the same tools tree distribution as the target distribution we're building and in those it's not guaranteed for meson 1.7.0 to be available yet. The advantage of dropping --no-rebuild is that meson will now reconfigure itself if needed, which is required if we change or move around meson files, as otherwise meson tends to explode spectacularly in hard to debug ways. https://mesonbuild.com/Release-notes-for-1-7-0.html#test-targets-no-longer-built-by-default
This commit is contained in:
committed by
Zbigniew Jędrzejewski-Szmek
parent
f32962d758
commit
848b5ae0d1
@@ -38,14 +38,14 @@ directory (`OutputDirectory=`) to point to the other directory using `mkosi.loca
|
||||
After the image has been built, the integration tests can be run with:
|
||||
|
||||
```shell
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build --no-rebuild --suite integration-tests --num-processes "$(($(nproc) / 4))"
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build --suite integration-tests --num-processes "$(($(nproc) / 4))"
|
||||
```
|
||||
|
||||
As usual, specific tests can be run in meson by appending the name of the test
|
||||
which is usually the name of the directory e.g.
|
||||
|
||||
```shell
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build --no-rebuild -v TEST-01-BASIC
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build -v TEST-01-BASIC
|
||||
```
|
||||
|
||||
See `mkosi -f sandbox -- meson introspect build --tests` for a list of tests.
|
||||
@@ -55,7 +55,7 @@ To interactively debug a failing integration test, the `--interactive` option
|
||||
newer:
|
||||
|
||||
```shell
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build --no-rebuild -i TEST-01-BASIC
|
||||
$ env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build -i TEST-01-BASIC
|
||||
```
|
||||
|
||||
Due to limitations in meson, the integration tests do not yet depend on the
|
||||
@@ -64,7 +64,7 @@ running the integration tests. To rebuild the image and rerun a test, the
|
||||
following command can be used:
|
||||
|
||||
```shell
|
||||
$ mkosi -f sandbox -- meson compile -C build mkosi && env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build --no-rebuild -v TEST-01-BASIC
|
||||
$ mkosi -f sandbox -- meson compile -C build mkosi && env SYSTEMD_INTEGRATION_TESTS=1 mkosi -f sandbox -- meson test -C build -v TEST-01-BASIC
|
||||
```
|
||||
|
||||
The integration tests use the same mkosi configuration that's used when you run
|
||||
@@ -78,7 +78,7 @@ To iterate on an integration test, let's first get a shell in the integration te
|
||||
the following:
|
||||
|
||||
```shell
|
||||
$ mkosi -f sandbox -- meson compile -C build mkosi && env SYSTEMD_INTEGRATION_TESTS=1 TEST_SHELL=1 mkosi -f sandbox -- meson test -C build --no-rebuild -i TEST-01-BASIC
|
||||
$ mkosi -f sandbox -- meson compile -C build mkosi && env SYSTEMD_INTEGRATION_TESTS=1 TEST_SHELL=1 mkosi -f sandbox -- meson test -C build -i TEST-01-BASIC
|
||||
```
|
||||
|
||||
This will get us a shell in the integration test environment after booting the machine without running the
|
||||
|
||||
Reference in New Issue
Block a user