4.3.1. System Configuration#

4.3.1.1. Base#

class simbricks.orchestration.system.base.System(name: str = 'da8524ca-8b4e-4800-9e4a-825a6368dc3c')#

Defines System configuration of the whole simulation

get_comp(ident: int) Component#
get_inf(ident: int) Interface#
get_chan(ident: int) Channel#
static set_latencies(channels: list[Channel], amount: int, ratio: Time) None#
latencies(amount: int, ratio: Time, channel_type: Any | None = None) None#
toJSON() dict#
classmethod fromJSON(json_obj: dict, enforce_dummies: bool = False) Self#
id() int#
class simbricks.orchestration.system.base.Component(s: System)#

Defines a component that is a part of the System Configuration.

Components could e.g. be hosts, NICs, switches.

interfaces() list[Interface]#
add_if(interface: Interface) None#
channels() list[Channel]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
class simbricks.orchestration.system.base.DummyComponent(s: System)#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_if(interface: Interface) None#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#
class simbricks.orchestration.system.base.Interface(c: Component)#

Specifies a single Interface of a Component.

A host component could e.g. have multiple PCI Interfaces.

is_connected() bool#
disconnect() None#
connect(c: Channel) None#
find_peer() Interface#
get_chan_raise() Channel#
get_opposing_interface() Interface#
T = ~T#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

id() int#
class simbricks.orchestration.system.base.DummyInterface(c: Component)#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

T = ~T#
connect(c: Channel) None#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.base.Channel(a: Interface, b: Interface)#
interfaces() tuple[Interface, Interface]#
disconnect()#
get_opposing_interface(interface: Interface) Interface#
set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#

4.3.1.2. Eth#

class simbricks.orchestration.system.eth.EthInterface(c: Component)#
connect(c: Channel) None#
T = ~T#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.eth.EthChannel(a: EthInterface, b: EthInterface)#
disconnect()#
classmethod fromJSON(system: System, json_obj: dict) Self#
get_opposing_interface(interface: Interface) Interface#
id() int#
interfaces() tuple[Interface, Interface]#
set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
toJSON() dict#
class simbricks.orchestration.system.eth.EthSimpleNIC(s: System)#
add_ipv4(ip: str) None#
add_if(interface: EthInterface) None#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.eth.BaseEthNetComponent(s: System)#
add_if(i: EthInterface) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.eth.EthWire(s: System)#
add_if(i: EthInterface) None#
channels() list[Channel]#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#
class simbricks.orchestration.system.eth.EthSwitch(s: System)#
add_if(i: EthInterface) None#
channels() list[Channel]#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#

4.3.1.3. PCIe#

class simbricks.orchestration.system.pcie.PCIeHostInterface(c: Component)#
T = ~T#
connect(c: Channel) None#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.pcie.PCIeDeviceInterface(c: Component)#
connect(c: Channel) None#
T = ~T#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.pcie.PCIeChannel(host: PCIeHostInterface, dev: PCIeDeviceInterface)#
host_if() PCIeHostInterface#
dev_if() PCIeDeviceInterface#
disconnect()#
classmethod fromJSON(system: System, json_obj: dict) Self#
get_opposing_interface(interface: Interface) Interface#
id() int#
interfaces() tuple[Interface, Interface]#
set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
toJSON() dict#
class simbricks.orchestration.system.pcie.PCIeSimpleDevice(s: System)#
add_if(interface: PCIeDeviceInterface) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.pcie.NVMeSSD(s: System)#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_if(interface: PCIeDeviceInterface) None#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#

4.3.1.4. Mem#

class simbricks.orchestration.system.mem.MemHostInterface(c: Component)#
T = ~T#
connect(c: Channel) None#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.mem.MemDeviceInterface(c: Component)#
connect(c: Channel) None#
T = ~T#
disconnect() None#
static filter_by_type(interfaces: list[Interface], ty: type[T]) list[T]#
find_peer() Interface#
classmethod fromJSON(system: System, json_obj: dict) Self#

Deserializes an Interface from its JSON representation.

Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.

get_chan_raise() Channel#
get_opposing_interface() Interface#
id() int#
is_connected() bool#
toJSON() dict#
component: Component#
channel: Channel | None#
class simbricks.orchestration.system.mem.MemChannel(host: MemHostInterface, dev: MemDeviceInterface)#
host_if() MemHostInterface#
dev_if() MemDeviceInterface#
disconnect()#
classmethod fromJSON(system: System, json_obj: dict) Self#
get_opposing_interface(interface: Interface) Interface#
id() int#
interfaces() tuple[Interface, Interface]#
set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
toJSON() dict#
class simbricks.orchestration.system.mem.MemSimpleDevice(s: System)#
add_if(interface: MemDeviceInterface) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.mem.MemInterconnect(s: System)#
add_if(interface: MemDeviceInterface | MemHostInterface) None#
connect_host(peer_if: MemHostInterface) MemChannel#
connect_device(peer_if: MemDeviceInterface) MemChannel#
add_route(dev: MemHostInterface, vaddr: int, len: int, paddr: int = 0)#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.mem.MemTerminal(s: System)#
add_if(interface: MemDeviceInterface) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#

4.3.1.5. NIC#

class simbricks.orchestration.system.nic.SimplePCIeNIC(s: System)#
add_if(interface: EthInterface | PCIeDeviceInterface) None#
add_ipv4(ip: str) None#
channels() list[Channel]#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#
class simbricks.orchestration.system.nic.VirtIONic(s: System)#
add_if(interface: EthInterface | PCIeDeviceInterface) None#
add_ipv4(ip: str) None#
channels() list[Channel]#
connect_eth_peer_if(peer_i: EthInterface) EthChannel#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
toJSON() dict#

4.3.1.6. Host#

class simbricks.orchestration.system.host.base.Host(s: System)#
add_app(a: Application) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
connect_pcie_dev(dev: PCIeSimpleDevice) PCIeChannel#
add_if(interface: Interface) None#
channels() list[Channel]#
id() int#
interfaces() list[Interface]#
async prepare(inst: inst_base.Instantiation) None#
class simbricks.orchestration.system.host.base.FullSystemHost(s: System)#
add_disk(disk: DiskImage) None#
async prepare(inst: instantiation.Instantiation) None#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_app(a: Application) None#
add_if(interface: Interface) None#
channels() list[Channel]#
connect_pcie_dev(dev: PCIeSimpleDevice) PCIeChannel#
id() int#
interfaces() list[Interface]#
class simbricks.orchestration.system.host.base.BaseLinuxHost(s: System)#
add_app(a: BaseLinuxApplication) None#
run_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run on node.

cleanup_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run to cleanup node.

add_config_file(config_file: ConfigFile)#
config_files(inst: instantiation.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

prepare_pre_cp(inst: instantiation.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

prepare_post_cp(inst: instantiation.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

config_str(inst: instantiation.Instantiation) str#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_disk(disk: DiskImage) None#
add_if(interface: Interface) None#
channels() list[Channel]#
connect_pcie_dev(dev: PCIeSimpleDevice) PCIeChannel#
id() int#
interfaces() list[Interface]#
async prepare(inst: instantiation.Instantiation) None#
class simbricks.orchestration.system.host.base.LinuxHost(sys)#
cleanup_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run to cleanup node.

prepare_pre_cp(inst: instantiation.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

prepare_post_cp(inst) list[str]#

Commands to run to prepare node after checkpoint restore.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_app(a: BaseLinuxApplication) None#
add_config_file(config_file: ConfigFile)#
add_disk(disk: DiskImage) None#
add_if(interface: Interface) None#
channels() list[Channel]#
config_files(inst: instantiation.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

config_str(inst: instantiation.Instantiation) str#
connect_pcie_dev(dev: PCIeSimpleDevice) PCIeChannel#
id() int#
interfaces() list[Interface]#
async prepare(inst: instantiation.Instantiation) None#
run_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run on node.

class simbricks.orchestration.system.host.base.NVMeLinuxHost(sys: System)#
add_app(a: BaseLinuxApplication) None#
add_config_file(config_file: ConfigFile)#
add_disk(disk: DiskImage) None#
add_if(interface: Interface) None#
channels() list[Channel]#
cleanup_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: instantiation.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

config_str(inst: instantiation.Instantiation) str#
connect_pcie_dev(dev: PCIeSimpleDevice) PCIeChannel#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
interfaces() list[Interface]#
async prepare(inst: instantiation.Instantiation) None#
prepare_post_cp(inst) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: instantiation.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

run_cmds(inst: instantiation.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#

4.3.1.7. Applications#

class simbricks.orchestration.system.host.app.Application(h: sys_host.Host)#
toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
class simbricks.orchestration.system.host.app.BaseLinuxApplication(h: sys_host.LinuxHost)#
abstractmethod run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

add_config_file(config_file: disk_images.ConfigFile)#
config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
id() int#
class simbricks.orchestration.system.host.app.GenericRawCommandApplication(h: sys_host.LinuxHost, commands: list[str] = [])#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.NVMEFsTest(h: sys_host.LinuxHost)#
classmethod fromJSON(system: System, json_obj: dict) Self#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

toJSON() dict#
class simbricks.orchestration.system.host.app.PingClient(h: sys_host.LinuxHost, server_ip: str = '192.168.64.1')#
run_cmds(inst: inst_base.Instantiation) tp.List[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.Sleep(h: sys_host.LinuxHost, delay: float = 10, infinite: bool = False)#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.NetperfServer(h: sys_host.LinuxHost)#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

toJSON() dict#
class simbricks.orchestration.system.host.app.NetperfClient(h: sys_host.LinuxHost, server_ip: str = '192.168.64.1')#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.IperfTCPServer(h: sys_host.LinuxHost)#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.IperfUDPServer(h: sys_host.LinuxHost)#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.IperfTCPClient(h: sys_host.LinuxHost, server_ip: str = '10.0.0.1', procs: int = 1)#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

class simbricks.orchestration.system.host.app.IperfUDPClient(h: sys_host.LinuxHost, server_ip: str = '10.0.0.1', rate: str = '150m')#
run_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run on node.

toJSON() dict#
classmethod fromJSON(system: System, json_obj: dict) Self#
add_config_file(config_file: disk_images.ConfigFile)#
cleanup_cmds(inst: inst_base.Instantiation) list[str]#

Commands to run to cleanup node.

config_files(inst: inst_base.Instantiation) list[disk_images.ConfigFile]#

Additional files to put inside the node, which are mounted under /tmp/guest/.

id() int#
prepare_post_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node after checkpoint restore.

prepare_pre_cp(inst: inst_base.Instantiation) list[str]#

Commands to run to prepare node before checkpointing.

4.3.1.8. Disk Images#

class simbricks.orchestration.system.disk_images.DiskImage(system: sys_base.System)#
abstractmethod available_formats() list[str]#
abstractmethod path(inst: inst_base.Instantiation, format: str) str#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
toJSON() dict#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
id() int#
class simbricks.orchestration.system.disk_images.DummyDiskImage(system: sys_base.System)#
available_formats() list[str]#
path(inst: inst_base.Instantiation, format: str) str#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
id() int#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
toJSON() dict#
class simbricks.orchestration.system.disk_images.ExternalDiskImage(system: sys_base.System, path: str)#
available_formats() list[str]#
path(inst: inst_base.Instantiation, format: str) str#
toJSON() dict#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
id() int#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
class simbricks.orchestration.system.disk_images.DistroDiskImage(system: sys_base.System, name: str)#
available_formats() list[str]#
path(inst: inst_base.Instantiation, format: str) str#
toJSON() dict#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
id() int#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
class simbricks.orchestration.system.disk_images.DynamicDiskImage(system: sys_base.System)#
path(inst: inst_base.Instantiation, format: str) str#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
static assert_is_file(path: str) None#
abstractmethod available_formats() list[str]#
find_format(host: sim_host.HostSim) str#
id() int#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
toJSON() dict#
class simbricks.orchestration.system.disk_images.LinuxConfigDiskImage(system: sys_base.System, host: sys_host.BaseLinuxHost)#
available_formats() list[str]#
toJSON()#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.BaseLinuxHost) None#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
id() int#
path(inst: inst_base.Instantiation, format: str) str#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
class simbricks.orchestration.system.disk_images.PackerDiskImage(system: sys_base.System, packer_config_path: str)#
available_formats() list[str]#
toJSON() dict#
classmethod fromJSON(system: sys_base.System, json_obj: dict) tpe.Self#
add_host(host: sys_host.Host) None#
static assert_is_file(path: str) None#
find_format(host: sim_host.HostSim) str#
id() int#
path(inst: inst_base.Instantiation, format: str) str#
async prepare(inst: inst_base.Instantiation, host: sys_host.Host) None#
class simbricks.orchestration.system.disk_images.ConfigFile(file_name: str)#
abstractmethod IOHandle(inst: inst_base.Instantiation) tp.IO#
toJSON() dict#
classmethod fromJSON(json_obj) Self#
id() int#
class simbricks.orchestration.system.disk_images.ConfigFileLocal(file_name: str, path: str, from_artifact: bool)#
IOHandle(inst: inst_base.Instantiation) tp.IO#
toJSON() dict#
classmethod fromJSON(json_obj) Self#
id() int#
class simbricks.orchestration.system.disk_images.ConfigFileStr(file_name: str, string: str)#
IOHandle(inst: inst_base.Instantiation) tp.IO#
toJSON() dict#
classmethod fromJSON(json_obj) Self#
id() int#