UNPKG

1.09 kBJavaScriptView Raw
1'use strict';
2
3var _semver = require('semver');
4
5var _fs = require('fs');
6
7var _nightingaleAppConsole = require('nightingale-app-console');
8
9var _exec = require('./commands/exec');
10
11const logger = _nightingaleAppConsole.logger.child('migrate');
12
13(function migrate(previousVersion) {
14 return new Promise((resolve, reject) => {
15 (0, _fs.readdir)(`${__dirname}/../migrate/`, (err, files) => {
16 if (err) {
17 return reject(err);
18 }
19
20 files.filter(file => file.slice(-3) === '.sh').map(file => ({ file, version: /^([^_]+)(_.*).sh$/.exec(file)[1] })).filter(file => (0, _semver.gt)(file.version, previousVersion)).sort((a, b) => (0, _semver.gt)(a.version, b.version)).forEach(file => {
21 logger.info('migrate', file);
22 console.log((0, _exec.runSync)('sh', [file.file], { cwd: `${__dirname}/../migrate/` }));
23 logger.infoSuccess('success', file);
24 });
25 });
26 });
27})(process.argv[2], process.argv[3]).then(() => logger.infoSuccess('migration done')).catch(err => console.log(err.stack || err.message || err));
28//# sourceMappingURL=migrate.js.map
\No newline at end of file