mirror of https://github.com/calzoneman/sync.git
Fix migrator (#831)
This commit is contained in:
parent
06b3916a6c
commit
b0b22a7579
|
@ -50,7 +50,7 @@
|
||||||
"lint": "eslint src",
|
"lint": "eslint src",
|
||||||
"pretest": "npm run lint",
|
"pretest": "npm run lint",
|
||||||
"postinstall": "./postinstall.sh",
|
"postinstall": "./postinstall.sh",
|
||||||
"server-dev": "babel -D --watch --source-maps --loose es6.destructuring,es6.forOf --out-dir lib/ src/",
|
"server-dev": "babel -D --watch --source-maps --loose es6.destructuring,es6.forOf --verbose --out-dir lib/ src/",
|
||||||
"generate-userscript": "$npm_node_execpath gdrive-userscript/generate-userscript $@ > www/js/cytube-google-drive.user.js",
|
"generate-userscript": "$npm_node_execpath gdrive-userscript/generate-userscript $@ > www/js/cytube-google-drive.user.js",
|
||||||
"test": "mocha --recursive --exit test",
|
"test": "mocha --recursive --exit test",
|
||||||
"integration-test": "mocha --recursive --exit integration_test"
|
"integration-test": "mocha --recursive --exit integration_test"
|
||||||
|
|
|
@ -6,6 +6,8 @@ import { DatabaseStore } from './dbstore';
|
||||||
import { sanitizeHTML } from '../xss';
|
import { sanitizeHTML } from '../xss';
|
||||||
import { ChannelNotFoundError } from '../errors';
|
import { ChannelNotFoundError } from '../errors';
|
||||||
|
|
||||||
|
const lookupAsync = Promise.promisify(require('../database/channels').lookup);
|
||||||
|
|
||||||
/* eslint no-console: off */
|
/* eslint no-console: off */
|
||||||
|
|
||||||
const EXPECTED_KEYS = [
|
const EXPECTED_KEYS = [
|
||||||
|
@ -118,7 +120,11 @@ function migrate(src, dest, opts) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return src.load(-1, name).then(data => {
|
let id;
|
||||||
|
return lookupAsync(name).then(chan => {
|
||||||
|
id = chan.id;
|
||||||
|
return src.load(id, name);
|
||||||
|
}).then(data => {
|
||||||
data = fixOldChandump(data);
|
data = fixOldChandump(data);
|
||||||
Object.keys(data).forEach(key => {
|
Object.keys(data).forEach(key => {
|
||||||
if (opts.keyWhitelist.length > 0 &&
|
if (opts.keyWhitelist.length > 0 &&
|
||||||
|
@ -129,7 +135,7 @@ function migrate(src, dest, opts) {
|
||||||
delete data[key];
|
delete data[key];
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return dest.save(name, data);
|
return dest.save(id, name, data);
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
console.log(`Migrated /${chanPath}/${name}`);
|
console.log(`Migrated /${chanPath}/${name}`);
|
||||||
}).catch(ChannelNotFoundError, _err => {
|
}).catch(ChannelNotFoundError, _err => {
|
||||||
|
|
Loading…
Reference in New Issue