diff --git a/scripts/jail-status.ts b/scripts/jail-status.ts index dce5c0a..30208ac 100644 --- a/scripts/jail-status.ts +++ b/scripts/jail-status.ts @@ -1,4 +1,5 @@ import { hostd } from '../src/hostd/client.js'; +import { parseBastilleList } from '../src/bastille-list.js'; const jailFilter = process.argv[2]; @@ -9,19 +10,7 @@ try { process.exit(1); } - const lines = result.output.split('\n').filter(Boolean); - const dataLines = lines.filter((l) => !/^\s*(JID|Name|---)/i.test(l)); - - const jails = dataLines.map((line) => { - const parts = line.trim().split(/\s+/); - return { - jid: parts[0] ?? '-', - ip: parts[1] ?? '-', - name: parts[2] ?? '-', - path: parts[3] ?? '-', - state: parts[0] === '-' || parts[0] === '0' ? 'stopped' : 'running', - }; - }); + const jails = parseBastilleList(result.output); const filtered = jailFilter ? jails.filter((j) => j.name === jailFilter)