clusterflux-public/scripts/wasmtime-assignment-smoke.js
Clusterflux release 21f097d9a8 Public release release-6d1a121b0a8a
Source commit: 6d1a121b0a8a636aac95998fe5d15c24c78eb7d0

Public tree identity: sha256:2bc22807f5b838286678b65d3f550b8ae4714ae673622041d4c2516a7c5b7926
2026-07-17 04:42:17 +02:00

44 lines
1 KiB
JavaScript
Executable file

#!/usr/bin/env node
const assert = require("assert");
const cp = require("child_process");
const fs = require("fs");
const path = require("path");
const repo = path.resolve(__dirname, "..");
const sdkRuntime = fs.readFileSync(
path.join(repo, "crates/clusterflux-sdk/src/sdk_runtime.rs"),
"utf8"
);
assert.doesNotMatch(
sdkRuntime,
/"type": "launch_task"/,
"native SDK code must not submit external TaskV1 work"
);
assert.match(
sdkRuntime,
/native SDK task spawning requires coordinator EntrypointV1 execution/
);
cp.execFileSync("node", ["scripts/cli-local-run-smoke.js"], {
cwd: repo,
stdio: "inherit",
});
cp.execFileSync(
"cargo",
["test", "-p", "clusterflux-node", "wasmtime_runtime_runs_named_task_export"],
{ cwd: repo, stdio: "inherit" }
);
cp.execFileSync(
"cargo",
[
"test",
"-p",
"clusterflux-coordinator",
"signed_active_wasm_task_can_spawn_and_join_child_in_its_process_only",
],
{ cwd: repo, stdio: "inherit" }
);
console.log("Wasmtime assignment smoke passed");