Public release release-ea887c8f56cd

Source commit: ea887c8f56cd53985a1179b13e5f1b85c485f584

Public tree identity: sha256:b96a97aacdbc8fd4fc2ea20d0e1450280d46db3f24aabe1475e5fbe20e05f255
This commit is contained in:
Clusterflux release 2026-07-25 02:55:35 +02:00
parent 9223c54939
commit 2a0f7ded04
37 changed files with 3145 additions and 628 deletions

View file

@ -94,12 +94,12 @@ function nodeSignatureMessage(
);
}
function signedNodeHeartbeat(node, identity) {
function signedNodeHeartbeat(tenant, project, node, identity) {
const nonce = `node-attach-heartbeat-${process.pid}-${Date.now()}`;
const issuedAt = Math.floor(Date.now() / 1000);
const payloadDigest = `sha256:${crypto
.createHash("sha256")
.update(JSON.stringify({ node, type: "node_heartbeat" }))
.update(JSON.stringify({ node, project, tenant, type: "node_heartbeat" }))
.digest("hex")}`;
const signature = crypto.sign(
null,
@ -283,8 +283,15 @@ function runAttach(addr, grant) {
const heartbeat = await send(addr, {
type: "node_heartbeat",
tenant: "tenant",
project: "project",
node: "node-attach",
node_signature: signedNodeHeartbeat("node-attach", nodeIdentity("node-attach")),
node_signature: signedNodeHeartbeat(
"tenant",
"project",
"node-attach",
nodeIdentity("node-attach")
),
});
assert.strictEqual(heartbeat.type, "node_heartbeat");
assert.strictEqual(heartbeat.node, "node-attach");