()
| 45 | const delay = (ms) => new Promise((r) => setTimeout(r, ms)); |
| 46 | |
| 47 | const freePort = () => |
| 48 | new Promise((resolve, reject) => { |
| 49 | const srv = net.createServer(); |
| 50 | srv.on("error", reject); |
| 51 | srv.listen(0, "127.0.0.1", () => { |
| 52 | const { port } = srv.address(); |
| 53 | srv.close(() => resolve(port)); |
| 54 | }); |
| 55 | }); |
| 56 | |
| 57 | const readManifest = (dataDir) => { |
| 58 | const path = join(dataDir, "server-control", "server.json"); |