Merge pull request 'fake_deal: fixup call wrapper' (#559) from Mic92-cli into main

This commit is contained in:
clan-bot
2023-11-23 16:37:40 +00:00
2 changed files with 13 additions and 7 deletions

View File

@@ -1,13 +1,16 @@
from types import ModuleType from types import ModuleType
from typing import Callable from typing import Any, Callable
class FakeDeal: class FakeDeal:
def __getattr__(self, _name: str) -> "FakeDeal": def __getattr__(self, name: str) -> "Callable":
return FakeDeal() return self.mock_call
def __call__(self, func: Callable) -> Callable: def mock_call(self, *args: Any, **kwargs: Any) -> Callable:
return func def wrapper(func: Callable) -> Callable:
return func
return wrapper
try: try:

View File

@@ -20,6 +20,7 @@ def qemu_command(
xchg_dir: Path, xchg_dir: Path,
secrets_dir: Path, secrets_dir: Path,
disk_img: Path, disk_img: Path,
spice_socket: Path,
) -> list[str]: ) -> list[str]:
kernel_cmdline = [ kernel_cmdline = [
(Path(nixos_config["toplevel"]) / "kernel-params").read_text(), (Path(nixos_config["toplevel"]) / "kernel-params").read_text(),
@@ -64,7 +65,7 @@ def qemu_command(
"-device", "virtio-serial-pci", "-device", "virtio-serial-pci",
"-chardev", "spicevmc,id=vdagent0,name=vdagent", "-chardev", "spicevmc,id=vdagent0,name=vdagent",
"-device", "virtserialport,chardev=vdagent0,name=com.redhat.spice.0", "-device", "virtserialport,chardev=vdagent0,name=com.redhat.spice.0",
"-spice", "disable-ticketing=on,port=5930,addr=127.0.0.1", "-spice", f"unix=on,addr={spice_socket},disable-ticketing=on",
"-device", "qemu-xhci,id=spicepass", "-device", "qemu-xhci,id=spicepass",
"-chardev", "spicevmc,id=usbredirchardev1,name=usbredir", "-chardev", "spicevmc,id=usbredirchardev1,name=usbredir",
"-device", "usb-redir,chardev=usbredirchardev1,id=usbredirdev1", "-device", "usb-redir,chardev=usbredirchardev1,id=usbredirdev1",
@@ -142,6 +143,7 @@ class BuildVmTask(BaseTask):
secrets_dir = tmpdir / "secrets" secrets_dir = tmpdir / "secrets"
secrets_dir.mkdir(exist_ok=True) secrets_dir.mkdir(exist_ok=True)
disk_img = tmpdir / "disk.img" disk_img = tmpdir / "disk.img"
spice_socket = tmpdir / "spice.sock"
env = os.environ.copy() env = os.environ.copy()
env["CLAN_DIR"] = str(self.vm.flake_url) env["CLAN_DIR"] = str(self.vm.flake_url)
@@ -208,9 +210,10 @@ class BuildVmTask(BaseTask):
xchg_dir=xchg_dir, xchg_dir=xchg_dir,
secrets_dir=secrets_dir, secrets_dir=secrets_dir,
disk_img=disk_img, disk_img=disk_img,
spice_socket=spice_socket,
) )
print( print(
"nix shell nixpkgs#spice-gtk -c spicy --port 5930 --spice-shared-dir $HOME" f"nix shell nixpkgs#spice-gtk -c spicy --uri=spice+unix://{spice_socket} --spice-shared-dir $HOME"
) )
print("$ " + shlex.join(qemu_cmd)) print("$ " + shlex.join(qemu_cmd))