Documentation
¶
Overview ¶
Command localdevserver spins up a real machinev1.Machine + builderv1.FileSystemWrapper gRPC server backed entirely by local directories and local subprocesses (harness/localdev), instead of real Firecracker guests (gitlab.noncepad.com/eflam/qemu-pool). It exists so harness.CreateManager's client side - and everything built on top of it, e.g. fund-agent's run_pipeline/build_strategy - can be exercised against a real gRPC server during local development without a qemu-pool deployment.
Each machine Create allocates gets its own fresh subdirectory of Configuration.WorkingDir (localdev.NewMachineManager); the directory is removed automatically once that machine's Create stream ends (see coderServer.Create's own doc comment).
There is no VM-level isolation here - Compile/Lint/Format/Test/Exec run as ordinary local subprocesses on whatever host runs this binary (same requirement/caveat as harness/localdev itself: a real cargo/rustfmt toolchain must already be on PATH). Treat this as a developer-trusted convenience, not a sandbox - never point a real qemu-pool client at this for anything you wouldn't run directly on your own machine.
Source Files
¶
- main.go
- server.go