Module firepilot::executor

source ·
Expand description

Low-Level Implementation of the microVM

The executor is the component that will run the virtual machine. It is responsible for starting the microVM and managing the socket that will be used to communicate with it.

Design

Executor implementation is a low level component which is not meant to be used directly, except if you intend to have your wrapper around it. It gives control on the full lifecycle of a microVM and actions that can be performed on it. It is meant to give full control, compared to [Machine] which gives a high-level API.

Implementation

You can either run firecracker directly with the binary by using FirecrackerExecutor or you could decide to be safer and run with a JailerExecutor. Be aware that the JailerExecutor is not yet implemented, but we welcome contributions.

Structs

  • Contains an instance of the microVM, this low-level implementation hold the process and is able to talk to the socket in order to configure the microVM.
  • Implementation of Executor for Firecracker, it will spawn the microVM using firecracker binary

Enums

Traits

  • Interface to determine how to execute commands on the socket and where to do it