diff --git a/ui/server/proxies/api.js b/ui/server/proxies/api.js index 9594ffc6c..5678210d6 100644 --- a/ui/server/proxies/api.js +++ b/ui/server/proxies/api.js @@ -7,6 +7,20 @@ module.exports = function(app, options) { // For options, see: // https://github.com/nodejitsu/node-http-proxy + // This is probably not safe to do, but it works for now. + let cacheKey = `${options.project.configPath()}|${options.environment}`; + let config = options.project.configCache.get(cacheKey); + + // Disable the proxy completely when Mirage is enabled. No requests to the API + // will be being made, and having the proxy attempt to connect to Nomad when it + // is not running can result in socket max connections that block the livereload + // server from reloading. + if (config['ember-cli-mirage'].enabled !== false) { + options.ui.writeInfoLine('Mirage is enabled. Not starting proxy'); + delete options.proxy; + return; + } + let proxyAddress = options.proxy; let server = options.httpServer;