cryptpad/scripts/migrations/migrate-tasks-v1.js

36 lines
962 B
JavaScript

var nThen = require("nthen");
var Tasks = require("../../storage/tasks");
var Logger = require("../../lib/log");
var config = require("../../lib/load-config");
// this isn't strictly necessary for what we want to do
// but the API requires it, and I don't feel like changing that
// --ansuz
var FileStorage = require("../../" + (config.storage || "./storage/file"));
var tasks;
nThen(function (w) {
Logger.create(config, w(function (_log) {
config.log = _log;
}));
}).nThen(function (w) {
FileStorage.create(config, w(function (_store) {
config.store = _store;
}));
}).nThen(function (w) {
Tasks.create(config, w(function (err, _tasks) {
if (err) { throw err; }
tasks = config.tasks = _tasks;
}));
}).nThen(function (w) {
tasks.migrate(w(function (err) {
if (err) {
throw err;
}
}));
}).nThen(function () {
config.store.shutdown();
config.log.shutdown();
});