Phase6
Some checks failed
CI / Node — lint, typecheck, test, build (push) Failing after 9s
CI / Go — node-agent tests (push) Failing after 8s
CI / Go — edge-gateway build (push) Successful in 13s

This commit is contained in:
smueller
2026-06-26 13:11:28 +02:00
parent d29a02f2a4
commit 49a98ee31d
81 changed files with 1462 additions and 53 deletions

View File

@@ -5,10 +5,15 @@ import { hashToken } from '@hexahost/auth';
/** Stable dev node ID — must match NODE_ID in .env for local agent */
export const DEV_NODE_ID = '00000000-0000-4000-8000-000000000001';
export const DEV_NODE_ID_2 = '00000000-0000-4000-8000-000000000002';
/** Shown once in seed output; hash stored in DB */
export const DEV_NODE_ENROLLMENT_TOKEN =
'local-dev-enrollment-token-change-me-32chars';
export const DEV_NODE_2_ENROLLMENT_TOKEN =
'local-dev-node2-enrollment-token-32ch';
async function main(): Promise<void> {
const prisma = new PrismaClient();
@@ -38,19 +43,46 @@ async function main(): Promise<void> {
hostname: 'localhost',
status: 'OFFLINE',
maxServers: 10,
maxRamMb: 16384,
platformRamMb: 2048,
enrollmentTokenHash: hashToken(DEV_NODE_ENROLLMENT_TOKEN),
},
update: {
name: 'local-dev',
hostname: 'localhost',
maxRamMb: 16384,
platformRamMb: 2048,
enrollmentTokenHash: hashToken(DEV_NODE_ENROLLMENT_TOKEN),
},
});
const devNode2 = await prisma.gameNode.upsert({
where: { id: DEV_NODE_ID_2 },
create: {
id: DEV_NODE_ID_2,
name: 'local-dev-2',
hostname: 'localhost',
status: 'OFFLINE',
maxServers: 10,
maxRamMb: 16384,
platformRamMb: 2048,
enrollmentTokenHash: hashToken(DEV_NODE_2_ENROLLMENT_TOKEN),
},
update: {
name: 'local-dev-2',
hostname: 'localhost',
maxRamMb: 16384,
platformRamMb: 2048,
enrollmentTokenHash: hashToken(DEV_NODE_2_ENROLLMENT_TOKEN),
},
});
console.log('Seed complete:');
console.log(` Plan Free: ${freePlan.id}`);
console.log(` Dev node: ${devNode.id} (${devNode.name})`);
console.log(` Dev node 2: ${devNode2.id} (${devNode2.name})`);
console.log(` Enrollment token (set NODE_TOKEN): ${DEV_NODE_ENROLLMENT_TOKEN}`);
console.log(` Node 2 enrollment token: ${DEV_NODE_2_ENROLLMENT_TOKEN}`);
} finally {
await prisma.$disconnect();
}

View File

@@ -19,6 +19,7 @@ export type {
InstalledAddon,
GameNode,
GameNodeHeartbeat,
ServerStartQueueEntry,
Plan,
FeatureFlag,
SystemSetting,