added upgrade.check back into upgrade.js

v1.18.x
Julian Lam 8 years ago
parent 3b1b2d39c6
commit d75cc60e76

@ -58,16 +58,16 @@ start.start = function () {
if (err) {
switch (err.message) {
case 'schema-out-of-date':
winston.warn('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
winston.warn(' ./nodebb upgrade');
winston.error('Your NodeBB schema is out-of-date. Please run the following command to bring your dataset up to spec:');
winston.error(' ./nodebb upgrade');
break;
case 'dependencies-out-of-date':
winston.warn('One or more of NodeBB\'s dependent packages are out-of-date. Please run the following command to update them:');
winston.warn(' ./nodebb upgrade');
winston.error('One or more of NodeBB\'s dependent packages are out-of-date. Please run the following command to update them:');
winston.error(' ./nodebb upgrade');
break;
case 'dependencies-missing':
winston.warn('One or more of NodeBB\'s dependent packages are missing. Please run the following command to update them:');
winston.warn(' ./nodebb upgrade');
winston.error('One or more of NodeBB\'s dependent packages are missing. Please run the following command to update them:');
winston.error(' ./nodebb upgrade');
break;
default:
winston.error(err);

@ -51,6 +51,22 @@ var Upgrade = {
],
};
Upgrade.check = function (callback) {
// Throw 'schema-out-of-date' if not all upgrade scripts have run
var all = Upgrade.available.reduce(function (memo, current) {
memo = memo.concat(current.upgrades);
return memo;
}, []);
db.getSortedSetRange('schemaLog', 0, -1, function (err, executed) {
var remainder = all.filter(function (name) {
return executed.indexOf(name) === -1;
});
callback(remainder.length > 1 ? new Error('schema-out-of-date') : null);
});
};
Upgrade.run = function (callback) {
process.stdout.write('\nParsing upgrade scripts... ');
var queue = [];

Loading…
Cancel
Save