Naively deduplicate VLANs in the python driver for NixOS tests. The current implementation accidentally works, since the VLan class mutates the environment. On construction it sets QEMU_VDE_SOCKET_${id} and this environment variable gets overwritten once a second VLAN with the same id is constructed. Because the NIC flags passed to qemu just use the QEMU_VDE_SOCKET_${id} environment variable, this implicitly chooses a single vde_switch process for each VLAN. However, this leads to unusable vde_switch processes being spawned in each test run and as a side effect makes it impossible to access the correct VLan objects in the interactive test driver. It also makes it remarkably hard to understand why the current implementation ever worked. |
||
---|---|---|
.. | ||
make-options-doc | ||
test-driver | ||
build-vms.nix | ||
default.nix | ||
eval-cacheable-options.nix | ||
eval-config-minimal.nix | ||
eval-config.nix | ||
from-env.nix | ||
make-channel.nix | ||
make-disk-image.nix | ||
make-ext4-fs.nix | ||
make-iso9660-image.nix | ||
make-iso9660-image.sh | ||
make-squashfs.nix | ||
make-system-tarball.nix | ||
make-system-tarball.sh | ||
make-zfs-image.nix | ||
qemu-common.nix | ||
systemd-lib.nix | ||
systemd-unit-options.nix | ||
testing-python.nix | ||
utils.nix |