IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
Needed for resolving the "localhost" hostname.
(cherry picked from commit a09825ce9fb3bd315f35654b6e6ee4f92c675cde)
(cherry picked from commit 4f7d6885a12c0e5e27a9d29f9ef09fb2fa53d6ef)
(cherry picked from commit 58205cfea853a049f79e47ca336c320c881328d8)
(cherry picked from commit a5735d3653287ebea8e4dbdfa36b13b13ee06ec3)
Follow-up for 6c2d47d6d3ad25ffd7527c7f4de31457ee1b25d8.
Fixes the following unexpected skip:
```
[ 6.163670] TEST-64-UDEV-STORAGE.sh[596]: + modinfo btrfs
[ 6.164102] TEST-64-UDEV-STORAGE.sh[726]: /usr/lib/systemd/tests/testdata/units/TEST-64-UDEV-STORAGE.sh: line 726: modinfo: command not found
[ 6.164683] TEST-64-UDEV-STORAGE.sh[727]: + echo 'This test requires the btrfs kernel module but it is not installed, skipping the test'
[ 6.165069] TEST-64-UDEV-STORAGE.sh[728]: + tee --append /skipped
[ 6.166801] TEST-64-UDEV-STORAGE.sh[728]: This test requires the btrfs kernel module but it is not installed, skipping the test
[ 6.167177] TEST-64-UDEV-STORAGE.sh[596]: + exit 77
```
(cherry picked from commit 2569e790f6352797f8e326ed472f49479791a2ac)
(cherry picked from commit 0868f29eae4e1577eb494808a7875df69845f50c)
(cherry picked from commit 911a5934d7d871ff1ef9a4ce9b34251185a03247)
As the former is deprecated and might not be available (i.e. on Ubuntu
Noble it's only available after installing the tzdata-legacy package).
(cherry picked from commit 568d97953b77fef4cb698894f567d08dfed453c9)
(cherry picked from commit 6e778d4b5fdb741e52fac7151d9789e24eb03648)
(cherry picked from commit 80643bc40fc730297d42711fa42e2e8759d26101)
Othewise test images are missing the tmpfiles snippets used to create the very
basic files at boot, which can be useful when a test wants to reuse the OS tree
(is already running in) for spawning a new container in pristine state.
(cherry picked from commit 08abfd0b8c8e50e6be411ed9c909e6ccc893f223)
(cherry picked from commit f16f33d5e1e0e0f1ea469931d929a7647ae2d5b1)
(cherry picked from commit 1b690849b06b439eca60a64ea9ce1de2f35ea966)
Needed since 87282a337d1ba7dc7d755f53b46c64b43718dcf7.
(cherry picked from commit 03b1e10fc8c3d85e98c38df642158076e97025fa)
(cherry picked from commit 048639c653c88905852ef3f4d710fde173916cfd)
(cherry picked from commit 52eaa1b7201cb92eca696959a7a995b5d898adb9)
(cherry picked from commit dfdcc7c987bf9d66ecdb7e4a88e8abdb342df299)
(cherry picked from commit 0f78bd6367f2e406c51d2c39aaa455e4b2aec366)
(cherry picked from commit d5404dc2e668c622a8653d9fcae13b535431346c)
(cherry picked from commit 58bcbad86cc910e007fae3c66c3a5cfc17046801)
(cherry picked from commit 44420128b81582eed79eba7672605a11720668c4)
(cherry picked from commit 94726df1d20756dfa410e4b11a1c9918fbb68f62)
Arch finally made dbus-broker the default dbus daemon [0], but unlike
Fedora they don't use Alias=dbus.service to make the dbus.symlink under
/etc, instead they create the symlink manually under /usr/lib, so let's
account for that.
[0] b24d15795a
(cherry picked from commit ec6c7bac5c92b26fc17ad165d2defc85da324391)
(cherry picked from commit 7b80fc2587d542b65e0ebc5cece9fca7cf83432a)
(cherry picked from commit 3129beaf0ccb9f9f34737f54ca50e1d0d873bde3)
Follow-up for 22e31655f3f9f54d932d4f48b92b36698e701729.
(cherry picked from commit 0f236e8cd6309cdc392d9e62bc545dcd497a9c50)
(cherry picked from commit 374a0f678817c1ab054587def008e65806f9c437)
(cherry picked from commit 74978b25bc686509c4f89ef6fa0e15453ad4362b)
Installing mdadm without kernel modules is mostly meaningless.
(cherry picked from commit 4ed943e97bb7ef4227837f7a6f607cd313cae70b)
(cherry picked from commit 570766c8b612c734fed642b74218bf1be142ebb1)
(cherry picked from commit 17f7d8d8003fc517d4c49ab0308fe97127a04465)
(cherry picked from commit 5b4fa6f13cf860afa53c71b52e4ceca25f8f13a5)
(cherry picked from commit a40677469af941118a2d86a386cc7a7ad8ff17ca)
(cherry picked from commit a5ebe751c78cf7fc8af5060b981555adaa5ff34d)
And derivates.
Replaces: #30458
(cherry picked from commit f9ba9d3eb7c350f31132ccd9ed1ee3c0c693f5c5)
(cherry picked from commit b1dba6bcaae70849394f34be8850f2e5e2559633)
(cherry picked from commit dc7bc3d34e1cf87e6cf93ba901bd21af24b1ae71)
Currently needed by test-dhcp-server unit test, af_packet is not built-in on
openSUSE distributions.
(cherry picked from commit a1af99df8e29ffb55b0c698eeda2c9bf795fc0e1)
(cherry picked from commit db2193609e554732c0288ccf27d5e58083f9219c)
On slower/overloaded systems it may take a bit for the swtpm socket
to show up:
I: Started swtpm as PID 189419 with state dir /tmp/tmp.pWqUutuGUj
I: Configured emulated TPM2 device tpm-spapr
+ tee /var/tmp/systemd-test-TEST-70-TPM2_1/console.log
+ timeout --foreground 1200 /bin/qemu-system-ppc64le -smp 4 ...
qemu-system-ppc64le: -chardev socket,id=chrtpm,path=/tmp/tmp.pWqUutuGUj/sock: Failed to connect to '/tmp/tmp.pWqUutuGUj/sock': No such file or directory
E: qemu failed with exit code 1
Spotted regularly in the ppc64le cron job and in some Ubuntu CI/CentOS CI
pr runs [0].
[0] https://github.com/systemd/systemd/pull/29183#issuecomment-1721727927
(cherry picked from commit 18c3ffbfcc2d4d6d1a4680092123e510945f7a78)
(cherry picked from commit 2171f689b8596458e21ac75766326431c7d151cc)
We can't do anything about them anyway, and most importantly this seems
to alleviate systemd/systemd-centos-ci#660, which should make the CIs
a bit less angry (at least until the issue is addressed properly).
(cherry picked from commit 3a89904e45cbbd96fb1c5d0768de5e5fcdaaa508)
(cherry picked from commit af7d007f897818068965a6500798815cc1335b72)
This new sub-package has been recently introduced.
(cherry picked from commit 33ce0a899258ed8dfb4a234a9f67e678127d41f9)
(cherry picked from commit 65d5b3561c2692e947327e9a77d3b1b4d932c828)
So we're able to detect memory leaks in our NSS modules.
An example after introducing a memory leak in nss-myhostname.c:
testsuite-71.sh[2881]: =================================================================
testsuite-71.sh[2881]: ==2880==ERROR: LeakSanitizer: detected memory leaks
testsuite-71.sh[2881]: Direct leak of 2 byte(s) in 1 object(s) allocated from:
testsuite-71.sh[2881]: #0 0x7fa28907243b in strdup (/usr/lib64/libasan.so.8.0.0+0x7243b)
testsuite-71.sh[2881]: #1 0x7fa286a7bc10 in gethostname_full ../src/basic/hostname-util.c:67
testsuite-71.sh[2881]: #2 0x7fa286a74af9 in gethostname_malloc ../src/basic/hostname-util.h:24
testsuite-71.sh[2881]: #3 0x7fa286a756f4 in _nss_myhostname_gethostbyname4_r ../src/nss-myhostname/nss-myhostname.c:79
testsuite-71.sh[2881]: #4 0x7fa288f17588 in getaddrinfo (/lib64/libc.so.6+0xf4588)
testsuite-71.sh[2881]: #5 0x7fa2890a4d93 in __interceptor_getaddrinfo.part.0 (/usr/lib64/libasan.so.8.0.0+0xa4d93)
testsuite-71.sh[2881]: #6 0x55a54b2b7159 in ahosts_keys_int.part.0 (/usr/bin/getent.orig+0x4159)
testsuite-71.sh[2881]: SUMMARY: AddressSanitizer: 2 byte(s) leaked in 1 allocation(s).
(cherry picked from commit 2b5e786005d8854600bb43335fd0c4067ce8da08)
As hitting an ASan/UBSan error in PID1 results in a crash (and a kernel
panic when running under qemu), we usually lose the stack trace which
makes debugging quite painful. Let's mitigate this by forwarding the
stack trace to multiple places - namely to a file and the syslog.
(cherry picked from commit 88c98cb2614a2893ec2ae7197a1f234b579da7a7)
This is still necessary when running with clang's ASan, as it uses an
external binary to symbolize the stack traces.
Follow-up to ba79e8c2ccd.
(cherry picked from commit 3bba91ef44f58ed98ed46c76fbf16db21cef5c25)
It's pointless nowadays, since we always need an initrd for the test VMs
as we require modules that are usually not compiled in the kernel.
(cherry picked from commit 93b896e90e6da99c0436ab69dfaf384784358605)
systemd-repart needs to find mkfs.ext4 for the test.
This is located in the directory /usr/sbin on openSUSE Tumbleweed.
But since the variable ALWAYS_SET_PATH in /etc/login.defs is set to yes,
su re-initializes the $PATH variable and removes /usr/sbin.
Hence, mkfs.ext4 is not found and the test fails.
Using setpriv instead of su fixes this issue and is more appropriate to
do the switch user task from root.
[zjs: move setpriv to $BASICTOOLS and force-push to retrigger CI]
(cherry picked from commit c7bf1959d7580e1b7e918b75f852b3bf3fb6eb3c)
Let's attempt to reduce the amount of flakes further when the AWS region
we run in is under heavy load and the hypervisor stars stealing our CPU
time.
Follow-up to e0cbb73911 and c78d18215b.
(cherry picked from commit 72f6d0e556d29b695369493a909562ff1325f8cd)
Let's make the dropin, to make the build dir writable for gcov, a bit
more generic, so it can be used by all units starting with prefix test-.
This should help with a bunch of recent reports about missing coverage I
got, as well as with existing test units using DynamicUser=true.
This might feel a bit like a magic trick from behind the curtains, but I
want to touch the actual tests as little as possible, since it makes them
unnecessarily messy (see the various workarounds for sanitizers), and
the coverage reports are generated only in a specific CI job anyway.
(cherry picked from commit e660c590a5222bc72f7aea8912806aa48b0fb126)
The test log is in the state directory, and we want to keep it around
when a test fails.
Follow-up for: 256a835f1c6c646a55039659aa2db186fbeb5c5d
(cherry picked from commit 49e8342965649503a537beacb77dd0fafc71debe)
(The one case that is left unchanged is '< <(subcommand)'.)
This way, the style with no gap was already dominant. This way, the reader
immediately knows that ' < ' is a comparison operator and ' << ' is a shift.
In a few cases, replace custom EOF replacement by just EOF. There is no point
in using someting like "_EOL" unless "EOF" appears in the text.
On Arch both delv and dig pull in libnss_resolve:
```
$ grep resolve /etc/nsswitch.conf
hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns
```
Since c78d18215b D-Bus services now have 60s to start, but the client
side (sd-bus) still waits only for 25s before giving up:
```
[ 226.196380] testsuite-71.sh[556]: + assert_in 'Static hostname: H' ''
[ 226.332965] testsuite-71.sh[576]: + set +ex
[ 226.332965] testsuite-71.sh[576]: FAIL: 'Static hostname: H' not found in:
[ 228.910782] sh[577]: + systemctl poweroff --no-block
[ 232.255584] hostnamectl[565]: Failed to query system properties: Connection timed out
[ 236.827514] systemd[1]: end.service: Consumed 2.131s CPU time.
[ 237.476969] dbus-daemon[566]: [system] Successfully activated service 'org.freedesktop.hostname1'
[ 237.516308] systemd[1]: system-modprobe.slice: Consumed 1.533s CPU time.
[ 237.794635] systemd[1]: testsuite-71.service: Main process exited, code=exited, status=1/FAILURE
[ 237.818469] systemd[1]: testsuite-71.service: Failed with result 'exit-code'.
[ 237.931415] systemd[1]: Failed to start testsuite-71.service.
[ 238.000833] systemd[1]: testsuite-71.service: Consumed 5.651s CPU time.
[ 238.181030] systemd[1]: Reached target testsuite.target.
```
Let's override the timeout in sd-bus as well to mitigate this.
Follow-up to c78d18215b3e5b0f0896ddb1d0d72c666b5e830b.
- Use inst_recursive() and image_install() helpers where appropriate
- Update comments to explain why we need to install the test data manually in
$initdir
- Install manual/ in $initdir as TEST-35-LOGIN relies on
manual/test-session-properties