Files
dark-lord/scripts/verify.cjs
drjones 78a071ba02 Harden onion boot flow and deepen site surfaces
Add persistent onion key backup and restore, improve startup resilience, and flesh out the major site verticals with richer navigation, search coverage, and operator documentation.

Made-with: Cursor
2026-04-07 21:35:52 -07:00

32 lines
1.0 KiB
JavaScript
Executable File

#!/usr/bin/env node
/**
* Local verification: generator, TypeScript, shell scripts, production build.
* Usage: npm run verify or node scripts/verify.cjs
*/
"use strict";
const { execSync } = require("node:child_process");
const path = require("node:path");
process.chdir(path.join(__dirname, ".."));
function run(label, cmd) {
console.log(`\n━━ ${label} ━━`);
execSync(cmd, { stdio: "inherit", shell: "/bin/bash" });
}
try {
run("onion config generator", "node scripts/generate-onion-config.cjs");
run("TypeScript (tsc --noEmit)", "npx tsc --noEmit");
run(
"bash syntax (start.sh, install, backup, restore)",
"bash -n start.sh && bash -n scripts/install-tor-onion.sh && bash -n scripts/backup-onion-keys.sh && bash -n scripts/restore-onion-keys.sh",
);
run("Next.js production build", "npm run build");
console.log("\n✓ verify: all checks passed.\n");
} catch {
console.error("\n✗ verify failed. If build hit EACCES on .next/, run:");
console.error(" sudo bash scripts/fix-next-perms.sh\n");
process.exit(1);
}