- server.listen(port, hostname, () => {
- logger.info('Server listening on %s:%d', hostname, port)
- logger.info('Web server: %s', CONFIG.WEBSERVER.URL)
+ server.listen(port, hostname, async () => {
+ if (cliOptions.plugins) {
+ try {
+ await PluginManager.Instance.rebuildNativePluginsIfNeeded()
+
+ await PluginManager.Instance.registerPluginsAndThemes()
+ } catch (err) {
+ logger.error('Cannot register plugins and themes.', { err })
+ }
+ }
+
+ ApplicationModel.updateNodeVersions()
+ .catch(err => logger.error('Cannot update node versions.', { err }))
+
+ JobQueue.Instance.start()
+ .catch(err => {
+ logger.error('Cannot start job queue.', { err })
+ process.exit(-1)
+ })
+
+ logger.info('HTTP server listening on %s:%d', hostname, port)
+ logger.info('Web server: %s', WEBSERVER.URL)
+
+ Hooks.runAction('action:application.listening')
+
+ if (cliOptions['benchmarkStartup']) process.exit(0)