From 7384c81e986d27aa08c451b21b6508c1ecf767a2 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Thu, 18 Feb 2021 18:12:48 +0100 Subject: nixos/tests/networking: test interface renaming --- nixos/tests/networking.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'nixos/tests/networking.nix') diff --git a/nixos/tests/networking.nix b/nixos/tests/networking.nix index 4fc5d48e0e1..62e9c2f62ad 100644 --- a/nixos/tests/networking.nix +++ b/nixos/tests/networking.nix @@ -672,6 +672,30 @@ let ), "The IPv6 routing table has not been properly cleaned:\n{}".format(ipv6Residue) ''; }; + rename = { + name = "RenameInterface"; + machine = { pkgs, ... }: { + virtualisation.vlans = [ 1 ]; + networking = { + useNetworkd = networkd; + useDHCP = false; + }; + } // + (if networkd + then { systemd.network.links."10-custom_name" = { + matchConfig.MACAddress = "52:54:00:12:01:01"; + linkConfig.Name = "custom_name"; + }; + } + else { services.udev.initrdRules = '' + SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:12:01:01", KERNEL=="eth*", NAME="custom_name" + ''; + }); + testScript = '' + machine.succeed("udevadm settle") + print(machine.succeed("ip link show dev custom_name")) + ''; + }; # even with disabled networkd, systemd.network.links should work # (as it's handled by udev, not networkd) link = { -- cgit 1.4.1