nixos/tests/fluent-bit: add regression test for #395128
This commit is contained in:
parent
b6394649ac
commit
388a54929a
@ -13,7 +13,7 @@ import ./make-test-python.nix (
|
||||
inputs = [
|
||||
{
|
||||
name = "systemd";
|
||||
systemd_filter = "_SYSTEMD_UNIT=fluent-bit.service";
|
||||
systemd_filter = "_SYSTEMD_UNIT=fluent-bit-regression-395128.service";
|
||||
}
|
||||
];
|
||||
outputs = [
|
||||
@ -28,12 +28,35 @@ import ./make-test-python.nix (
|
||||
};
|
||||
|
||||
systemd.services.fluent-bit.serviceConfig.LogsDirectory = "fluent-bit";
|
||||
|
||||
# Logs get compressed when larger than 1024 bytes
|
||||
# Lets generate some logs that trigger that
|
||||
# This causes libzstd to be dlopen'd by systemd which breaks fluent-bit 3.2.7+
|
||||
# https://www.freedesktop.org/software/systemd/man/latest/journald.conf.html#Compress=
|
||||
systemd.services.fluent-bit-regression-395128 = {
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
for i in {1..20}; do
|
||||
(head -c 1200 < /dev/zero | tr '\0' 'A') && echo
|
||||
sleep 1
|
||||
done
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
machine.wait_for_unit("fluent-bit.service")
|
||||
|
||||
# Regression test for https://github.com/NixOS/nixpkgs/pull/395128
|
||||
with subtest("fluent-bit handles zstd-compressed journal logs"):
|
||||
machine.succeed("systemctl start fluent-bit-regression-395128.service")
|
||||
machine.succeed("systemctl show -p NRestarts fluent-bit.service | grep -q 'NRestarts=0'")
|
||||
|
||||
machine.wait_for_file("/var/log/fluent-bit/fluent-bit.out")
|
||||
'';
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user