nixos/test-driver: remove allow_reboot state from Machine, make it a start() kwarg

Astro 64a4ae6f f4331c49

Changed files
+4 -8
nixos
lib
test-driver
test_driver
tests
-1
nixos/lib/test-driver/test_driver/driver.py
···
start_command=cmd,
name=name,
keep_vm_state=args.get("keep_vm_state", False),
-
allow_reboot=args.get("allow_reboot", False),
)
def serial_stdout_on(self) -> None:
+3 -6
nixos/lib/test-driver/test_driver/machine.py
···
start_command: StartCommand
keep_vm_state: bool
-
allow_reboot: bool
process: Optional[subprocess.Popen]
pid: Optional[int]
···
start_command: StartCommand,
name: str = "machine",
keep_vm_state: bool = False,
-
allow_reboot: bool = False,
callbacks: Optional[List[Callable]] = None,
) -> None:
self.out_dir = out_dir
self.tmp_dir = tmp_dir
self.keep_vm_state = keep_vm_state
-
self.allow_reboot = allow_reboot
self.name = name
self.start_command = start_command
self.callbacks = callbacks if callbacks is not None else []
···
self.process.stdin.write(chars.encode())
self.process.stdin.flush()
-
def start(self) -> None:
+
def start(self, allow_reboot: bool = False) -> None:
if self.booted:
return
···
self.shared_dir,
self.monitor_path,
self.shell_path,
-
self.allow_reboot,
+
allow_reboot,
)
self.monitor, _ = monitor_socket.accept()
self.shell, _ = shell_socket.accept()
···
"""Press Ctrl+Alt+Delete in the guest.
Prepares the machine to be reconnected which is useful if the
-
machine was started after setting `machine.allow_reboot = True`
+
machine was started with `allow_reboot = True`
"""
self.send_key(f"ctrl-alt-delete")
self.connected = False
+1 -1
nixos/tests/login.nix
···
};
testScript = ''
-
machine.allow_reboot = True
+
machine.start(allow_reboot = True)
machine.wait_for_unit("multi-user.target")
machine.wait_until_succeeds("pgrep -f 'agetty.*tty1'")