git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #133675 from Ma27/test-driver-compat

nixos/test-driver: minor fixes for `nixos-build-vms(8)`

commit0362d572b2d77dac3deac8672f064250f1ba6253 authorMaximilian Bosch <maximilian@mbosch.me> dateMon 16 Aug 2021, 14:07 (5 years ago) parent34be5801ba3f79
2 files changed+12−2
nixos/lib/test-driver/test-driver.py+4−2 nixos/lib/testing-python.nix+8
nixos/lib/test-driver/test-driver.py+4−2
@@ -1029,10 +1029,11 @@ if __name__ == "__main__":
10291029
10301030 args = arg_parser.parse_args()
10311031 global test_script
1032+ testscript = pathlib.Path(args.testscript).read_text()
10321033
10331034 def test_script() -> None:
10341035 with log.nested("running the VM test script"):
1035− exec(pathlib.Path(args.testscript).read_text(), globals())
1036+ exec(testscript, globals())
10361037
10371038 log = Logger()
10381039
@@ -1061,7 +1062,8 @@ if __name__ == "__main__":
10611062 process.terminate()
10621063 log.close()
10631064
1065+ interactive = args.interactive or (not bool(testscript))
10641066 tic = time.time()
1065− run_tests(args.interactive)
1067+ run_tests(interactive)
10661068 toc = time.time()
10671069 print("test script finished in {:.2f}s".format(toc - tic))
nixos/lib/testing-python.nix+8
@@ -186,6 +186,14 @@ rec {
186186 --set startScripts "''${vmStartScripts[*]}" \
187187 --set testScript "$out/test-script" \
188188 --set vlans '${toString vlans}'
189+
190+ ${lib.optionalString (testScript == "") ''
191+ ln -s ${testDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms
192+ wrapProgram $out/bin/nixos-run-vms \
193+ --set startScripts "''${vmStartScripts[*]}" \
194+ --set testScript "${pkgs.writeText "start-all" "start_all(); join_all();"}" \
195+ --set vlans '${toString vlans}'
196+ ''}
189197 '');
190198
191199 # Make a full-blown test