"tests/pipelines/vscode:/vscode.git/clone" did not exist on "a72a057d62d0adb2743b20968c72ae9cb5e5d62b"
Unverified Commit a3a041bc authored by Jakob Görgen's avatar Jakob Görgen
Browse files

disk image + fixed socket path

parent 5eac59d3
......@@ -214,7 +214,7 @@ class Instantiation(util_base.IdObj):
print(f"_interface_to_sock_path: self._env._shm_base={self.shm_base_dir()}")
return self._join_paths(
base=self.shm_base_dir(),
relative_path=f"{queue_type}/{queue_ident}",
relative_path=f"{queue_type}-{queue_ident}",
enforce_existence=False,
)
......
......@@ -29,11 +29,11 @@ import simbricks.orchestration.simulation.base as sim_base
import simbricks.orchestration.system as system
from simbricks.orchestration.instantiation import base as inst_base
from simbricks.orchestration.experiment.experiment_environment_new import ExpEnv
from simbricks.orchestration.system import host as sys_host
from simbricks.orchestration.system import pcie as sys_pcie
from simbricks.orchestration.system import mem as sys_mem
if tp.TYPE_CHECKING:
from simbricks.orchestration.system import host as sys_host
from simbricks.orchestration.system import mem as sys_mem
from simbricks.orchestration.system import pcie as sys_pcie
# if tp.TYPE_CHECKING:
class HostSim(sim_base.Simulator):
......
......@@ -138,6 +138,7 @@ class SwitchNet(NetSim):
for sock in listen:
cmd += " -h " + sock._path
print(f"SWITCH NET CMD!!! ===== {cmd}")
return cmd
......
......@@ -70,13 +70,13 @@ class NICSim(PCIDevSim):
pci_devices = self.filter_components_by_type(ty=sys_eth.EthSimpleNIC)
assert len(pci_devices) == 1
socket = self._get_socket(inst=inst, interface=pci_devices[0]._eth_if)
assert socket is not None
assert socket is not None and socket._type == inst_base.SockType.LISTEN
cmd += f"{socket._path} "
eth_devices = self.filter_components_by_type(ty=sys_pcie.PCIeSimpleDevice)
assert len(eth_devices) == 1
socket = self._get_socket(inst=inst, interface=eth_devices[0]._pci_if)
assert socket is not None
assert socket is not None and socket._type == inst_base.SockType.LISTEN
cmd += f"{socket._path} "
cmd += (
......
......@@ -24,7 +24,7 @@ from __future__ import annotations
import abc
import io
import os.path
import pathlib
import tarfile
import typing as tp
from simbricks.orchestration.utils import base as utils_base
......@@ -45,7 +45,12 @@ class DiskImage(utils_base.IdObj):
@abc.abstractmethod
def path(self, inst: inst_base.Instantiation, format: str) -> str:
return
raise Exception("must be overwritten")
@staticmethod
def assert_is_file(path: str) -> str:
if not pathlib.Path(path).is_file():
raise Exception(f"path={path} must be a file")
async def _prepare_format(self, inst: inst_base.Instantiation, format: str) -> None:
pass
......@@ -70,15 +75,15 @@ class DiskImage(utils_base.IdObj):
class ExternalDiskImage(DiskImage):
def __init__(self, h: sys_host.FullSystemHost, path: str) -> None:
super().__init__(h)
self.path = path
self._path = path
self.formats = ["raw", "qcow2"]
def available_formats(self) -> list[str]:
return self.formats
def path(self, inst: inst_base.Instantiation, format: str) -> str:
assert os.path.isfile(self.path)
return self.path
DiskImage.assert_is_file(self._path)
return self._path
# Disk images shipped with simbricks
......@@ -99,8 +104,8 @@ class DistroDiskImage(DiskImage):
pass
else:
raise RuntimeError("Unsupported disk format")
assert os.path.isfile(self.path)
return self.path
DiskImage.assert_is_file(path)
return path
# Abstract base class for dynamically generated images
class DynamicDiskImage(DiskImage):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment