From 79d2e696d781b22c0e9c3ee23e1ae9e1ce3c1b08 Mon Sep 17 00:00:00 2001 From: Alan Shaw Date: Thu, 22 Aug 2019 16:24:01 +0100 Subject: [PATCH] fix: create HTTP servers in series In Windows this consistently fails because of port collisions when using ethemeral ports. License: MIT Signed-off-by: Alan Shaw --- src/http/index.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/http/index.js b/src/http/index.js index 63ed93bd2e..af27532b93 100644 --- a/src/http/index.js +++ b/src/http/index.js @@ -23,20 +23,20 @@ function hapiInfoToMultiaddr (info) { return toMultiaddr(uri) } -function serverCreator (serverAddrs, createServer, ipfs) { +async function serverCreator (serverAddrs, createServer, ipfs) { serverAddrs = serverAddrs || [] // just in case the address is just string serverAddrs = Array.isArray(serverAddrs) ? serverAddrs : [serverAddrs] - const processServer = async address => { + const servers = [] + for (const address of serverAddrs) { const addrParts = address.split('/') const server = await createServer(addrParts[2], addrParts[4], ipfs) await server.start() server.info.ma = hapiInfoToMultiaddr(server.info) - return server + servers.push(server) } - - return Promise.all(serverAddrs.map(processServer)) + return servers } class HttpApi {