@hotcell/daemon 0.1.17 → 0.1.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/driver/applevz.d.ts +19 -0
- package/dist/driver/applevz.js +77 -18
- package/dist/driver/applevz.js.map +1 -1
- package/dist/driver/vz-fetch.d.ts +17 -0
- package/dist/driver/vz-fetch.js +119 -0
- package/dist/driver/vz-fetch.js.map +1 -0
- package/package.json +2 -2
package/dist/driver/applevz.d.ts
CHANGED
|
@@ -61,6 +61,13 @@ export declare class AppleVzDriver extends AgentDriver {
|
|
|
61
61
|
* `pool-N` socket paths, or one instance's orphan cleanup unlinks the
|
|
62
62
|
* other's live relay. Derived from stateDir; kept short for sun_path. */
|
|
63
63
|
private readonly poolTok;
|
|
64
|
+
/**
|
|
65
|
+
* Path to the helper binary actually used. Starts at the configured path (a
|
|
66
|
+
* source checkout / explicit override) and is redirected to the fetched copy
|
|
67
|
+
* in `~/.hotcell/vz/` by `ensureHelper()` when the configured one is absent.
|
|
68
|
+
*/
|
|
69
|
+
private helperBin;
|
|
70
|
+
private kernelPath;
|
|
64
71
|
constructor(cfg: VzConfig);
|
|
65
72
|
create(opts: CreateOptions): Promise<void>;
|
|
66
73
|
start(opts: CreateOptions): Promise<void>;
|
|
@@ -118,6 +125,18 @@ export declare class AppleVzDriver extends AgentDriver {
|
|
|
118
125
|
/** Open a fresh AgentConn to the sandbox's relay socket (the signed VZ helper
|
|
119
126
|
* relays the guest vsock to this unix socket). Backs every agent-served op. */
|
|
120
127
|
protected openConn(id: string): Promise<AgentConn>;
|
|
128
|
+
/**
|
|
129
|
+
* Make sure a runnable helper exists. A source checkout / explicit
|
|
130
|
+
* `HOTCELL_VZ_HELPER_PATH` is used as-is; otherwise (the npm-install case) fetch
|
|
131
|
+
* the ad-hoc-signed helper from the matching GitHub release into `~/.hotcell/vz/`.
|
|
132
|
+
*/
|
|
133
|
+
private ensureHelper;
|
|
134
|
+
/**
|
|
135
|
+
* Make sure the guest runtime (kernel + agent + converter scripts) is present,
|
|
136
|
+
* fetching it into the state dir on first `create` in the npm-install case. The
|
|
137
|
+
* helper alone lets the daemon start + probe; booting a VM needs these too.
|
|
138
|
+
*/
|
|
139
|
+
private ensureGuest;
|
|
121
140
|
ping(): Promise<void>;
|
|
122
141
|
hostInfo(): Promise<HostInfo>;
|
|
123
142
|
/** One-shot stdio RPC to a throwaway helper process (probe/hostInfo). */
|
package/dist/driver/applevz.js
CHANGED
|
@@ -8,6 +8,7 @@ import { AgentDriver } from "./agent-driver.js";
|
|
|
8
8
|
import { VzImageCache } from "./vz-image.js";
|
|
9
9
|
import { createHash } from "node:crypto";
|
|
10
10
|
import { RUNNING_FROM_SOURCE } from "../config.js";
|
|
11
|
+
import { fetchVzGuest, fetchVzHelper } from "./vz-fetch.js";
|
|
11
12
|
import { log } from "../logger.js";
|
|
12
13
|
/** Concurrent warm-pool spare boots: refill fast, but leave CPU for foreground creates. */
|
|
13
14
|
const FILL_CONCURRENCY = 4;
|
|
@@ -42,14 +43,27 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
42
43
|
* `pool-N` socket paths, or one instance's orphan cleanup unlinks the
|
|
43
44
|
* other's live relay. Derived from stateDir; kept short for sun_path. */
|
|
44
45
|
poolTok;
|
|
46
|
+
/**
|
|
47
|
+
* Path to the helper binary actually used. Starts at the configured path (a
|
|
48
|
+
* source checkout / explicit override) and is redirected to the fetched copy
|
|
49
|
+
* in `~/.hotcell/vz/` by `ensureHelper()` when the configured one is absent.
|
|
50
|
+
*/
|
|
51
|
+
helperBin;
|
|
52
|
+
kernelPath;
|
|
45
53
|
constructor(cfg) {
|
|
46
54
|
super();
|
|
47
55
|
this.cfg = cfg;
|
|
48
|
-
//
|
|
49
|
-
//
|
|
50
|
-
|
|
56
|
+
// Decide where the VZ runtime lives. A full source checkout / prior fetch has
|
|
57
|
+
// the helper + kernel + converter scripts next to the configured helper
|
|
58
|
+
// (helpers/hotcell-vz/…); otherwise (the npm-install case) they're fetched into
|
|
59
|
+
// the state dir on first use — `ensureHelper()` grabs the binary, `ensureGuest()`
|
|
60
|
+
// the kernel + agent + scripts — and everything resolves under one writable dir.
|
|
61
|
+
const useConfigured = existsSync(cfg.helperPath) && existsSync(cfg.kernel);
|
|
62
|
+
const runtimeDir = useConfigured ? dirname(dirname(cfg.helperPath)) : cfg.stateDir;
|
|
63
|
+
this.helperBin = useConfigured ? cfg.helperPath : join(cfg.stateDir, "hotcell-vz");
|
|
64
|
+
this.kernelPath = useConfigured ? cfg.kernel : join(cfg.stateDir, "guest", "vmlinux-vz");
|
|
51
65
|
this.images = new VzImageCache({
|
|
52
|
-
vzDir,
|
|
66
|
+
vzDir: runtimeDir,
|
|
53
67
|
cacheDir: cfg.imageCacheDir,
|
|
54
68
|
prebuiltRootfs: cfg.rootfs,
|
|
55
69
|
});
|
|
@@ -93,6 +107,10 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
93
107
|
const id = opts.id;
|
|
94
108
|
if (this.vms.has(id))
|
|
95
109
|
return; // already running
|
|
110
|
+
// Booting needs the helper + the guest runtime (kernel/agent/scripts); fetch
|
|
111
|
+
// them on demand in the npm-install case before the first VM comes up.
|
|
112
|
+
await this.ensureHelper();
|
|
113
|
+
await this.ensureGuest();
|
|
96
114
|
const adopted = await this.tryClaimFromPool(opts);
|
|
97
115
|
if (!adopted) {
|
|
98
116
|
const stateDir = join(this.cfg.stateDir, id);
|
|
@@ -180,7 +198,7 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
180
198
|
catch {
|
|
181
199
|
/* not there */
|
|
182
200
|
}
|
|
183
|
-
const helper = new HelperProcess(this.
|
|
201
|
+
const helper = new HelperProcess(this.helperBin, join(p.stateDir, "console.log"));
|
|
184
202
|
const vm = { helper, socketPath: p.socketPath, workspaceImg, stateDir: p.stateDir };
|
|
185
203
|
// Memory + CPU are hard VM caps (VZ memorySize/cpuCount). VZ needs an integer
|
|
186
204
|
// vCPU count, so a fractional `cpus` rounds up. pidsLimit has no VM analogue —
|
|
@@ -190,7 +208,7 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
190
208
|
const pidsMax = p.limits?.pidsLimit && p.limits.pidsLimit > 0 ? p.limits.pidsLimit : 0;
|
|
191
209
|
try {
|
|
192
210
|
await helper.rpc("start", {
|
|
193
|
-
kernel: this.
|
|
211
|
+
kernel: this.kernelPath,
|
|
194
212
|
rootfs,
|
|
195
213
|
workspace: workspaceImg,
|
|
196
214
|
cpus,
|
|
@@ -465,23 +483,64 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
465
483
|
return AgentConn.connect({ path: vm.socketPath, timeoutMs: 15000 });
|
|
466
484
|
}
|
|
467
485
|
// --- host probes (one-shot helper, no VM) ---------------------------------
|
|
486
|
+
/**
|
|
487
|
+
* Make sure a runnable helper exists. A source checkout / explicit
|
|
488
|
+
* `HOTCELL_VZ_HELPER_PATH` is used as-is; otherwise (the npm-install case) fetch
|
|
489
|
+
* the ad-hoc-signed helper from the matching GitHub release into `~/.hotcell/vz/`.
|
|
490
|
+
*/
|
|
491
|
+
async ensureHelper() {
|
|
492
|
+
if (existsSync(this.helperBin))
|
|
493
|
+
return;
|
|
494
|
+
try {
|
|
495
|
+
this.helperBin = await fetchVzHelper(this.cfg.stateDir);
|
|
496
|
+
log.info("fetched the Apple VZ helper", { path: this.helperBin });
|
|
497
|
+
}
|
|
498
|
+
catch (err) {
|
|
499
|
+
if (RUNNING_FROM_SOURCE) {
|
|
500
|
+
throw new Error(`The Apple VZ helper (hotcell-vz) isn't built yet. Build it with 'npm run build:vz', ` +
|
|
501
|
+
`then run 'hotcell start' again. (${err.message})`);
|
|
502
|
+
}
|
|
503
|
+
throw new Error(`Couldn't get the Apple VZ helper (${err.message}). Check your connection and retry, ` +
|
|
504
|
+
`or use Docker for now: run 'hotcell setup' and choose containers (or set HOTCELL_DRIVER=container).`);
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
/**
|
|
508
|
+
* Make sure the guest runtime (kernel + agent + converter scripts) is present,
|
|
509
|
+
* fetching it into the state dir on first `create` in the npm-install case. The
|
|
510
|
+
* helper alone lets the daemon start + probe; booting a VM needs these too.
|
|
511
|
+
*/
|
|
512
|
+
async ensureGuest() {
|
|
513
|
+
if (existsSync(this.kernelPath))
|
|
514
|
+
return;
|
|
515
|
+
try {
|
|
516
|
+
await fetchVzGuest(this.cfg.stateDir);
|
|
517
|
+
log.info("fetched the Apple VZ guest runtime (kernel + agent + converter)", {
|
|
518
|
+
dir: this.cfg.stateDir,
|
|
519
|
+
});
|
|
520
|
+
}
|
|
521
|
+
catch (err) {
|
|
522
|
+
if (RUNNING_FROM_SOURCE) {
|
|
523
|
+
throw new Error(`The Apple VZ guest runtime (kernel + agent) isn't built yet. Build it with ` +
|
|
524
|
+
`'npm run build:vz && bash helpers/hotcell-vz/build-kernel.sh && npm run build:agent'. ` +
|
|
525
|
+
`(${err.message})`);
|
|
526
|
+
}
|
|
527
|
+
throw new Error(`Couldn't get the Apple VZ guest runtime (${err.message}). Check your connection ` +
|
|
528
|
+
`and retry, or use Docker for now (HOTCELL_DRIVER=container).`);
|
|
529
|
+
}
|
|
530
|
+
}
|
|
468
531
|
async ping() {
|
|
532
|
+
await this.ensureHelper();
|
|
469
533
|
let res;
|
|
470
534
|
try {
|
|
471
535
|
res = await this.oneShot("probe");
|
|
472
536
|
}
|
|
473
537
|
catch (err) {
|
|
474
|
-
//
|
|
475
|
-
//
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
`
|
|
480
|
-
`(or set HOTCELL_DRIVER=container).`);
|
|
481
|
-
}
|
|
482
|
-
throw new Error(`The Apple VZ helper (hotcell-vz) isn't built yet — it's missing at "${this.cfg.helperPath}". ` +
|
|
483
|
-
`Build it with 'npm run build:vz', then run 'hotcell start' again. ` +
|
|
484
|
-
`(underlying: ${err.message})`);
|
|
538
|
+
// Helper is present but wouldn't run — e.g. macOS blocked a downloaded
|
|
539
|
+
// binary, or the build is broken. Surface the real error for diagnosis.
|
|
540
|
+
throw new Error(`The Apple VZ helper is present but wouldn't run: ${err.message}. ` +
|
|
541
|
+
(RUNNING_FROM_SOURCE
|
|
542
|
+
? `Try rebuilding it with 'npm run build:vz'.`
|
|
543
|
+
: `Please report this, or use Docker: run 'hotcell setup' and choose containers.`));
|
|
485
544
|
}
|
|
486
545
|
const r = res.result;
|
|
487
546
|
if (!res.ok || !r?.available) {
|
|
@@ -500,7 +559,7 @@ export class AppleVzDriver extends AgentDriver {
|
|
|
500
559
|
/** One-shot stdio RPC to a throwaway helper process (probe/hostInfo). */
|
|
501
560
|
oneShot(method) {
|
|
502
561
|
return new Promise((resolve, reject) => {
|
|
503
|
-
const child = spawn(this.
|
|
562
|
+
const child = spawn(this.helperBin, [], { stdio: ["pipe", "pipe", "pipe"] });
|
|
504
563
|
let out = "";
|
|
505
564
|
let err = "";
|
|
506
565
|
child.stdout.on("data", (d) => (out += d.toString()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applevz.js","sourceRoot":"","sources":["../../src/driver/applevz.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"applevz.js","sourceRoot":"","sources":["../../src/driver/applevz.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** This daemon's version — the release tag we fetch matching artifacts from. */
|
|
2
|
+
export declare function daemonVersion(): string;
|
|
3
|
+
/**
|
|
4
|
+
* Ensure the VZ helper exists, downloading it from the matching release if not.
|
|
5
|
+
* Returns the path to a runnable helper. Throws (with a network-friendly
|
|
6
|
+
* message) if the download or checksum fails — callers surface that as the
|
|
7
|
+
* driver being unavailable.
|
|
8
|
+
*/
|
|
9
|
+
export declare function fetchVzHelper(destDir: string, version?: string): Promise<string>;
|
|
10
|
+
/**
|
|
11
|
+
* Ensure the VZ *guest runtime* (guest kernel + in-guest agent + the converter
|
|
12
|
+
* shell scripts) is present under `destDir`, downloading and extracting the
|
|
13
|
+
* release tarball if not. This is what `hotcell run` needs to convert an image
|
|
14
|
+
* into an ext4 rootfs and boot a microVM — the helper alone only lets the daemon
|
|
15
|
+
* start and probe. Throws (network-friendly) if the download or checksum fails.
|
|
16
|
+
*/
|
|
17
|
+
export declare function fetchVzGuest(destDir: string, version?: string): Promise<void>;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { execFile } from "node:child_process";
|
|
3
|
+
import { chmodSync, existsSync, mkdirSync, readFileSync, unlinkSync, writeFileSync } from "node:fs";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
/**
|
|
7
|
+
* On-demand fetch of the signed Apple VZ helper.
|
|
8
|
+
*
|
|
9
|
+
* The microVM artifacts (the `hotcell-vz` helper, guest kernel) don't ship in
|
|
10
|
+
* the npm package — they're published as assets on the GitHub release that
|
|
11
|
+
* matches the daemon's version, and fetched into `~/.hotcell/vz/` the first time
|
|
12
|
+
* the applevz driver needs them. The helper is **ad-hoc code-signed** (no Apple
|
|
13
|
+
* Developer account) and carries `com.apple.security.virtualization`, which
|
|
14
|
+
* macOS honors for ad-hoc binaries. A file pulled over HTTP isn't
|
|
15
|
+
* Gatekeeper-quarantined, but we strip `com.apple.quarantine` defensively so a
|
|
16
|
+
* downloaded helper always runs.
|
|
17
|
+
*/
|
|
18
|
+
const RELEASE_BASE = "https://github.com/sinameraji/hotcell/releases/download";
|
|
19
|
+
/** This daemon's version — the release tag we fetch matching artifacts from. */
|
|
20
|
+
export function daemonVersion() {
|
|
21
|
+
// .../packages/daemon/dist/driver/vz-fetch.js → package.json is two dirs up.
|
|
22
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
23
|
+
const pkg = JSON.parse(readFileSync(join(here, "..", "..", "package.json"), "utf8"));
|
|
24
|
+
return String(pkg.version ?? "");
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Ensure the VZ helper exists, downloading it from the matching release if not.
|
|
28
|
+
* Returns the path to a runnable helper. Throws (with a network-friendly
|
|
29
|
+
* message) if the download or checksum fails — callers surface that as the
|
|
30
|
+
* driver being unavailable.
|
|
31
|
+
*/
|
|
32
|
+
export async function fetchVzHelper(destDir, version = daemonVersion()) {
|
|
33
|
+
const dest = join(destDir, "hotcell-vz");
|
|
34
|
+
if (existsSync(dest))
|
|
35
|
+
return dest;
|
|
36
|
+
const base = `${RELEASE_BASE}/v${version}`;
|
|
37
|
+
let bin;
|
|
38
|
+
try {
|
|
39
|
+
bin = await download(`${base}/hotcell-vz`);
|
|
40
|
+
await verifyChecksum(bin, `${base}/hotcell-vz.sha256`);
|
|
41
|
+
}
|
|
42
|
+
catch (err) {
|
|
43
|
+
throw new Error(`couldn't download the Apple VZ helper for v${version} (${err.message})`);
|
|
44
|
+
}
|
|
45
|
+
mkdirSync(destDir, { recursive: true });
|
|
46
|
+
writeFileSync(dest, bin, { mode: 0o755 });
|
|
47
|
+
chmodSync(dest, 0o755);
|
|
48
|
+
await dequarantine(dest);
|
|
49
|
+
return dest;
|
|
50
|
+
}
|
|
51
|
+
async function download(url) {
|
|
52
|
+
const res = await fetch(url, { redirect: "follow" });
|
|
53
|
+
if (!res.ok)
|
|
54
|
+
throw new Error(`HTTP ${res.status} from ${url}`);
|
|
55
|
+
return Buffer.from(await res.arrayBuffer());
|
|
56
|
+
}
|
|
57
|
+
/** Verify against the published `.sha256` (best-effort: skip only if absent). */
|
|
58
|
+
async function verifyChecksum(bin, shaUrl) {
|
|
59
|
+
let expected;
|
|
60
|
+
try {
|
|
61
|
+
const res = await fetch(shaUrl, { redirect: "follow" });
|
|
62
|
+
if (!res.ok)
|
|
63
|
+
return; // no checksum published — skip
|
|
64
|
+
expected = (await res.text()).trim().split(/\s+/)[0] ?? "";
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (!expected)
|
|
70
|
+
return;
|
|
71
|
+
const got = createHash("sha256").update(bin).digest("hex");
|
|
72
|
+
if (got !== expected)
|
|
73
|
+
throw new Error(`checksum mismatch (expected ${expected}, got ${got})`);
|
|
74
|
+
}
|
|
75
|
+
/** Strip the quarantine xattr (no-op if absent), so a downloaded helper runs. */
|
|
76
|
+
function dequarantine(path) {
|
|
77
|
+
return new Promise((resolve) => {
|
|
78
|
+
execFile("xattr", ["-d", "com.apple.quarantine", path], () => resolve());
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Ensure the VZ *guest runtime* (guest kernel + in-guest agent + the converter
|
|
83
|
+
* shell scripts) is present under `destDir`, downloading and extracting the
|
|
84
|
+
* release tarball if not. This is what `hotcell run` needs to convert an image
|
|
85
|
+
* into an ext4 rootfs and boot a microVM — the helper alone only lets the daemon
|
|
86
|
+
* start and probe. Throws (network-friendly) if the download or checksum fails.
|
|
87
|
+
*/
|
|
88
|
+
export async function fetchVzGuest(destDir, version = daemonVersion()) {
|
|
89
|
+
const base = `${RELEASE_BASE}/v${version}`;
|
|
90
|
+
const name = "hotcell-vz-guest-arm64.tar.gz";
|
|
91
|
+
let tgz;
|
|
92
|
+
try {
|
|
93
|
+
tgz = await download(`${base}/${name}`);
|
|
94
|
+
await verifyChecksum(tgz, `${base}/${name}.sha256`);
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
throw new Error(`couldn't download the Apple VZ guest runtime for v${version} (${err.message})`);
|
|
98
|
+
}
|
|
99
|
+
mkdirSync(join(destDir, "guest"), { recursive: true });
|
|
100
|
+
const tmp = join(destDir, ".guest.tar.gz");
|
|
101
|
+
writeFileSync(tmp, tgz);
|
|
102
|
+
await extractTar(tmp, destDir);
|
|
103
|
+
unlinkSync(tmp);
|
|
104
|
+
// The scripts + agent must be executable; the kernel is read by the helper.
|
|
105
|
+
for (const rel of ["convert-image.sh", "build-blank-workspace.sh", "guest/init.sh", "guest/hotcell-agent"]) {
|
|
106
|
+
try {
|
|
107
|
+
chmodSync(join(destDir, rel), 0o755);
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
/* a missing optional file just stays as shipped */
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
function extractTar(tarball, destDir) {
|
|
115
|
+
return new Promise((resolve, reject) => {
|
|
116
|
+
execFile("tar", ["xzf", tarball, "-C", destDir], (err) => (err ? reject(err) : resolve()));
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=vz-fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vz-fetch.js","sourceRoot":"","sources":["../../src/driver/vz-fetch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hotcell/daemon",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.19",
|
|
4
4
|
"description": "hotcell sandbox daemon: containers + Firecracker/Apple-VZ microVMs, egress credential gateway",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"dockerode": "^4.0.2"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@hotcell/sdk": "0.1.
|
|
21
|
+
"@hotcell/sdk": "0.1.19",
|
|
22
22
|
"@types/dockerode": "^3.3.31",
|
|
23
23
|
"@types/node": "^22.5.0",
|
|
24
24
|
"tsx": "^4.16.0",
|