mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2025-01-01 16:34:15 +03:00
nixos/switch-test: add test for services starting with dash
Ensures that services starting with dash can be reloaded.
This commit is contained in:
parent
8fb63401af
commit
7874b995fb
@ -214,6 +214,25 @@ in {
|
|||||||
systemd.services."escaped\\x2ddash".serviceConfig.X-Test = "test";
|
systemd.services."escaped\\x2ddash".serviceConfig.X-Test = "test";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
unitStartingWithDash.configuration = {
|
||||||
|
systemd.services."-" = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
ExecStart = "${pkgs.coreutils}/bin/true";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
unitStartingWithDashModified.configuration = {
|
||||||
|
imports = [ unitStartingWithDash.configuration ];
|
||||||
|
systemd.services."-" = {
|
||||||
|
reloadIfChanged = true;
|
||||||
|
serviceConfig.ExecReload = "${pkgs.coreutils}/bin/true";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
unitWithRequirement.configuration = {
|
unitWithRequirement.configuration = {
|
||||||
systemd.services.required-service = {
|
systemd.services.required-service = {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
@ -637,9 +656,27 @@ in {
|
|||||||
assert_contains(out, "\nstarting the following units: escaped\\x2ddash.service\n")
|
assert_contains(out, "\nstarting the following units: escaped\\x2ddash.service\n")
|
||||||
assert_lacks(out, "the following new units were started:")
|
assert_lacks(out, "the following new units were started:")
|
||||||
|
|
||||||
|
# Ensure units can start with a dash
|
||||||
|
out = switch_to_specialisation("${machine}", "unitStartingWithDash")
|
||||||
|
assert_contains(out, "stopping the following units: escaped\\x2ddash.service\n")
|
||||||
|
assert_lacks(out, "NOT restarting the following changed units:")
|
||||||
|
assert_lacks(out, "reloading the following units:")
|
||||||
|
assert_lacks(out, "\nrestarting the following units:")
|
||||||
|
assert_lacks(out, "\nstarting the following units:")
|
||||||
|
assert_contains(out, "the following new units were started: -.service\n")
|
||||||
|
|
||||||
|
# The regression only occurs when reloading units
|
||||||
|
out = switch_to_specialisation("${machine}", "unitStartingWithDashModified")
|
||||||
|
assert_lacks(out, "stopping the following units:")
|
||||||
|
assert_lacks(out, "NOT restarting the following changed units:")
|
||||||
|
assert_contains(out, "reloading the following units: -.service")
|
||||||
|
assert_lacks(out, "\nrestarting the following units:")
|
||||||
|
assert_lacks(out, "\nstarting the following units:")
|
||||||
|
assert_lacks(out, "the following new units were started:")
|
||||||
|
|
||||||
# Ensure units that require changed units are properly reloaded
|
# Ensure units that require changed units are properly reloaded
|
||||||
out = switch_to_specialisation("${machine}", "unitWithRequirement")
|
out = switch_to_specialisation("${machine}", "unitWithRequirement")
|
||||||
assert_contains(out, "stopping the following units: escaped\\x2ddash.service\n")
|
assert_contains(out, "stopping the following units: -.service\n")
|
||||||
assert_lacks(out, "NOT restarting the following changed units:")
|
assert_lacks(out, "NOT restarting the following changed units:")
|
||||||
assert_lacks(out, "reloading the following units:")
|
assert_lacks(out, "reloading the following units:")
|
||||||
assert_lacks(out, "\nrestarting the following units:")
|
assert_lacks(out, "\nrestarting the following units:")
|
||||||
|
Loading…
Reference in New Issue
Block a user