init
This commit is contained in:
commit
d295c7f139
1527 files changed
+270726
No files matched your search
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env node
|
||||
// build-dashboard.mjs — cross-platform build for the Go TUI dashboard.
|
||||
//
|
||||
// `go build -o career-dashboard .` writes an extension-less binary on Windows
|
||||
// (Go only auto-appends .exe when -o is omitted), which breaks bare-name/PATH
|
||||
// lookup there. This wrapper picks the platform-correct output name instead:
|
||||
// dashboard/career-dashboard on Unix, dashboard/career-dashboard.exe on Windows.
|
||||
|
||||
import { spawnSync } from 'node:child_process';
|
||||
import { dirname, join } from 'node:path';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
|
||||
const root = dirname(fileURLToPath(import.meta.url));
|
||||
const out = process.platform === 'win32' ? 'career-dashboard.exe' : 'career-dashboard';
|
||||
|
||||
const result = spawnSync('go', ['build', '-o', out, '.'], {
|
||||
cwd: join(root, 'dashboard'),
|
||||
stdio: 'inherit',
|
||||
});
|
||||
|
||||
if (result.error) {
|
||||
if (result.error.code === 'ENOENT') {
|
||||
console.error('Go toolchain not found. Install Go 1.24+ from https://go.dev/dl/ and retry.');
|
||||
} else {
|
||||
console.error(`Build failed to start: ${result.error.message}`);
|
||||
}
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
if (result.status !== 0) {
|
||||
process.exit(result.status ?? 1);
|
||||
}
|
||||
|
||||
console.log(`Built dashboard/${out} — run it with: npm run serve:dashboard (or dashboard/${out} --path .)`);
|
||||
Reference in new issue
Block a user