feat(runtime): stage VM runtime artifacts and writable drives in per-VM ephemeral storage by default
This commit is contained in:
@@ -6,6 +6,10 @@ import type { TFirecrackerArch, TCacheType, TSnapshotType, TLogLevel } from './c
|
||||
export interface ISmartVMOptions {
|
||||
/** Directory for storing binaries, kernels, rootfs images, and sockets. Defaults to /tmp/.smartvm */
|
||||
dataDir?: string;
|
||||
/** Directory for VM sockets and ephemeral per-VM files. Defaults to /dev/shm/.smartvm/runtime on Linux when available. */
|
||||
runtimeDir?: string;
|
||||
/** Copy writable drives into the VM runtime directory before boot and delete them on cleanup. Defaults to true. */
|
||||
ephemeralWritableDrives?: boolean;
|
||||
/** Firecracker version to use. Defaults to latest. */
|
||||
firecrackerVersion?: string;
|
||||
/** Target architecture. Defaults to x86_64. */
|
||||
@@ -139,6 +143,16 @@ export interface IBaseImageBundle {
|
||||
lastAccessedAt: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Runtime behavior for a MicroVM instance.
|
||||
*/
|
||||
export interface IMicroVMRuntimeOptions {
|
||||
/** Directory for VM sockets and ephemeral per-VM files. */
|
||||
runtimeDir?: string;
|
||||
/** Copy writable drives into runtimeDir before boot and delete them on cleanup. Defaults to true. */
|
||||
ephemeralWritableDrives?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Firecracker boot source configuration.
|
||||
*/
|
||||
@@ -205,6 +219,8 @@ export interface IDriveConfig {
|
||||
rateLimiter?: IRateLimiter;
|
||||
/** Path to a file that backs the device for I/O. */
|
||||
ioEngine?: string;
|
||||
/** Whether this drive should be staged into per-VM ephemeral storage. Defaults to true for writable drives. */
|
||||
ephemeral?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user