diff --git a/services/web/app/src/infrastructure/Server.js b/services/web/app/src/infrastructure/Server.js index e73c3615a5..cd811e4dbd 100644 --- a/services/web/app/src/infrastructure/Server.js +++ b/services/web/app/src/infrastructure/Server.js @@ -225,21 +225,14 @@ logger.info('creating HTTP server'.yellow) const server = require('http').createServer(app) // provide settings for separate web and api processes -// if enableApiRouter and enableWebRouter are not defined they default -// to true. -const notDefined = x => x == null -const enableApiRouter = - Settings.web != null ? Settings.web.enableApiRouter : undefined -if (enableApiRouter || notDefined(enableApiRouter)) { +if (Settings.enabledServices.includes('api')) { logger.info('providing api router') app.use(privateApiRouter) app.use(Validation.errorMiddleware) app.use(ErrorController.handleApiError) } -const enableWebRouter = - Settings.web != null ? Settings.web.enableWebRouter : undefined -if (enableWebRouter || notDefined(enableWebRouter)) { +if (Settings.enabledServices.includes('web')) { logger.info('providing web router') if (app.get('env') === 'production') { diff --git a/services/web/config/settings.defaults.coffee b/services/web/config/settings.defaults.coffee index daad8e6525..524c4a0012 100644 --- a/services/web/config/settings.defaults.coffee +++ b/services/web/config/settings.defaults.coffee @@ -634,6 +634,8 @@ module.exports = settings = # {imageName: 'texlive-full:2014.2', imageDesc: 'Legacy SL TeXLive 2014.2'} # ] + enabledServices: (process.env['ENABLED_SERVICES'] || 'web,api').split(',').map((s) => s.trim()) + # module options # ---------- modules: