@nicolas Ok if it's not triggering for ./nodebb start
you will have to add some more console.logs in here basically add a console.log for each block in that async.waterfall(). My guess is one of the steps before routes(app, middleware);
is breaking in production mode, like a build step or a plugin that uses static:app.preload
. Change the code to look like this .
async.waterfall([
async.apply(cacheStaticFiles),
async.apply(meta.themes.setupPaths),
function(next) {
console.log('1');
plugins.init(app, middleware, next);
},
function(next) {
console.log('2');
async.parallel([
async.apply(meta.templates.compile),
async.apply(!skipJS ? meta.js.minify : meta.js.getFromFile, 'nodebb.min.js'),
async.apply(!skipJS ? meta.js.minify : meta.js.getFromFile, 'acp.min.js'),
async.apply(!skipLess ? meta.css.minify : meta.css.getFromFile),
async.apply(meta.sounds.init),
async.apply(meta.blacklist.load)
], next);
},
function(results, next) {
console.log('3');
plugins.fireHook('static:app.preload', {
app: app,
middleware: middleware
}, next);
},
function(next) {
console.log('4');
routes(app, middleware);
next();
}
], callback);
Run it in prod mode and let me know the output.