Some checks are pending
Auto-update PR branches / Update open PR branches (push) Waiting to run
CI / Frontend Static Quality Checks (push) Waiting to run
CI / Frontend Tests & Coverage (push) Waiting to run
CI / Rust Tests & Quality Checks (push) Waiting to run
CI / Linux build verification (push) Waiting to run
Deploy docs / Build VitePress site (push) Waiting to run
Deploy docs / Deploy to GitHub Pages (push) Blocked by required conditions
Release (Alpha) / Compute alpha version (push) Waiting to run
Release (Alpha) / Build release artifacts (push) Blocked by required conditions
Release (Alpha) / GitHub Release (alpha) (push) Blocked by required conditions
Release (Alpha) / Update docs and release pages (push) Blocked by required conditions
Source snapshot: 514ab1975951d94342ea38e64101d5a0f1c51c77
39 lines
883 B
JavaScript
39 lines
883 B
JavaScript
#!/usr/bin/env node
|
|
|
|
import { spawn } from 'node:child_process'
|
|
import { tmpdir } from 'node:os'
|
|
import { join } from 'node:path'
|
|
|
|
const port = process.argv[2] ?? process.env.PORT ?? '41741'
|
|
const viteCacheDir = process.env.TOLARIA_VITE_CACHE_DIR ?? join(tmpdir(), `tolaria-vite-smoke-${port}`)
|
|
|
|
const child = spawn(
|
|
'pnpm',
|
|
['dev', '--host', '127.0.0.1', '--port', port, '--strictPort'],
|
|
{
|
|
cwd: process.cwd(),
|
|
env: {
|
|
...process.env,
|
|
TOLARIA_VITE_CACHE_DIR: viteCacheDir,
|
|
},
|
|
stdio: ['pipe', 'inherit', 'inherit'],
|
|
},
|
|
)
|
|
|
|
function forwardSignal(signal) {
|
|
if (child.killed) return
|
|
child.kill(signal)
|
|
}
|
|
|
|
process.on('SIGINT', () => forwardSignal('SIGINT'))
|
|
process.on('SIGTERM', () => forwardSignal('SIGTERM'))
|
|
|
|
child.on('exit', (code, signal) => {
|
|
if (signal) {
|
|
process.kill(process.pid, signal)
|
|
return
|
|
}
|
|
|
|
process.exit(code ?? 1)
|
|
})
|