at 24.11-pre 994 B view raw
1{ system ? builtins.currentSystem 2, config ? {} 3, networkExpr 4}: 5 6let 7 nodes = builtins.mapAttrs (vm: module: { 8 _file = "${networkExpr}@node-${vm}"; 9 imports = [ module ]; 10 }) (import networkExpr); 11 12 pkgs = import ../../../../.. { inherit system config; }; 13 14 testing = import ../../../../lib/testing-python.nix { 15 inherit system pkgs; 16 }; 17 18 interactiveDriver = (testing.makeTest { inherit nodes; name = "network"; testScript = "start_all(); join_all();"; }).test.driverInteractive; 19in 20 21 22pkgs.runCommand "nixos-build-vms" { nativeBuildInputs = [ pkgs.makeWrapper ]; } '' 23 mkdir -p $out/bin 24 ln -s ${interactiveDriver}/bin/nixos-test-driver $out/bin/nixos-test-driver 25 ln -s ${interactiveDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms 26 wrapProgram $out/bin/nixos-test-driver \ 27 --add-flags "--interactive" 28 wrapProgram $out/bin/nixos-run-vms \ 29 --set testScript "${pkgs.writeText "start-all" "start_all(); join_all();"}" \ 30 --add-flags "--no-interactive" 31''