()
| 23 | } |
| 24 | |
| 25 | async function getAvailablePort(): Promise<number> { |
| 26 | return await new Promise((resolve, reject) => { |
| 27 | const server = createServer(); |
| 28 | server.unref(); |
| 29 | server.on('error', reject); |
| 30 | server.listen(0, '0.0.0.0', () => { |
| 31 | const address = server.address(); |
| 32 | const port = typeof address === 'object' && address ? address.port : 0; |
| 33 | server.close((closeErr) => { |
| 34 | if (closeErr) { |
| 35 | reject(closeErr); |
| 36 | } else { |
| 37 | resolve(port); |
| 38 | } |
| 39 | }); |
| 40 | }); |
| 41 | }); |
| 42 | } |
| 43 | |
| 44 | export async function startMcpDockerServer( |
| 45 | input: StartMcpServerInput, |
no test coverage detected