mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-06-05 21:03:40 +00:00
nixos/tests/containers-physical_interfaces: add autoStart test
This commit is contained in:
@@ -25,6 +25,28 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
autoStart =
|
||||
{ ... }:
|
||||
{
|
||||
virtualisation.vlans = [ 1 ];
|
||||
|
||||
networking.useNetworkd = true;
|
||||
|
||||
systemd.network.netdevs."20-dummy-test".netdevConfig = {
|
||||
Name = "dummy-test";
|
||||
Kind = "dummy";
|
||||
};
|
||||
|
||||
containers.autoStart = {
|
||||
autoStart = true;
|
||||
privateNetwork = true;
|
||||
interfaces = [ "dummy-test" ];
|
||||
|
||||
config = {
|
||||
networking.firewall.enable = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
bridged =
|
||||
{ ... }:
|
||||
{
|
||||
@@ -117,6 +139,16 @@
|
||||
# that the device is present in the container.
|
||||
server.succeed("nixos-container run server -- ip a show dev eth1 >&2")
|
||||
|
||||
with subtest("Simple dummy interface is up, with autoStart enabled"):
|
||||
autoStart.wait_for_unit("container@autoStart")
|
||||
|
||||
# Check if any dependency of container@autoStart.service timed out.
|
||||
# If a non-existing .device dependency is set in Wants, systemd will
|
||||
# wait until that unit times out, resulting a delay of the container.
|
||||
autoStart.fail("journalctl _PID=1 | grep sys-subsystem-net-devices | grep 'timed out'")
|
||||
|
||||
autoStart.succeed("nixos-container run autoStart -- ip a show dev dummy-test >&2")
|
||||
|
||||
with subtest("Physical device in bridge in container can ping server"):
|
||||
bridged.wait_for_unit("default.target")
|
||||
bridged.succeed("nixos-container start bridged")
|
||||
|
||||
Reference in New Issue
Block a user