clusterflux-public/scripts/wasmtime-assignment-smoke.js
Clusterflux release b23e4e5bff Public release release-f70e47af061d
Source commit: f70e47af061d8f7ba27cd769c8cd2e2f8707dc72

Public tree identity: sha256:03a43db60d295811688bedaa5ad6460df0dbde27fbf37033997f4d8100f83ab2
2026-07-17 00:11:51 +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");