PURISTA API / @purista/sandbox / FirecrackerSandboxDriver
Class: FirecrackerSandboxDriver
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:23
FirecrackerSandboxDriver - A driver for AWS Firecracker MicroVMs. Best for Linux environments with KVM support. On Mac, this would typically run inside a Linux VM.
Implements
Constructors
Constructor
new FirecrackerSandboxDriver(
config):FirecrackerSandboxDriver
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:27
Parameters
config
FirecrackerSandboxDriverConfig
Returns
FirecrackerSandboxDriver
Properties
name
name:
string='FirecrackerSandboxDriver'
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:24
The unique name of the driver implementation
Implementation of
Methods
createSandbox()
createSandbox(
params):Promise<{containerName:string;sandboxId:string; }>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:35
Provisions and starts a new sandbox environment.
Parameters
params
Configuration for the new sandbox
gitConfig?
{ email: string; token?: string; username: string; }
gitConfig.email
string
gitConfig.token?
string
gitConfig.username
string
organizationId
string
projectId
string
sandboxId
string
userId
string
Returns
Promise<{ containerName: string; sandboxId: string; }>
The sandbox ID and underlying container name
Implementation of
destroySandbox()
destroySandbox(
params):Promise<void>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:90
Permanently removes a sandbox and its resources.
Parameters
params
Reference to the sandbox to destroy
sandboxId
string
Returns
Promise<void>
Implementation of
executeBash()
executeBash(
_params):Promise<{exitCode:number;stderr:string;stdout:string; }>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:99
Executes a bash command within the specified sandbox.
Parameters
_params
Command and execution context
command
string
cwd?
string
sandboxId
string
Returns
Promise<{ exitCode: number; stderr: string; stdout: string; }>
The result of the command execution
Implementation of
readFile()
readFile(
_params):Promise<string>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:109
Reads the content of a file from the sandbox.
Parameters
_params
Path to the file
path
string
sandboxId
string
Returns
Promise<string>
Implementation of
scanRunningSandboxes()
scanRunningSandboxes():
Promise<object[]>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:117
Scans the underlying system for running sandboxes and recovers their metadata. This is used for self-healing and service restarts.
Returns
Promise<object[]>
Implementation of
SandboxDriver.scanRunningSandboxes
writeFiles()
writeFiles(
_params):Promise<void>
Defined in: sandbox-service/src/driver/FirecrackerSandboxDriver/FirecrackerSandboxDriver.ts:113
Writes one or more files to the sandbox workspace.
Parameters
_params
Map of file paths to their contents
files
Record<string, string>
sandboxId
string
Returns
Promise<void>
