Fix user mapping for migration

This commit is contained in:
Jonathan Cremin 2016-08-07 17:49:27 +01:00
parent 889dc02945
commit c7c8b3621e
5 changed files with 10 additions and 6 deletions

View file

@ -50,7 +50,7 @@ co(function *sync() {
continue;
}
const oldId = user._id.toString();
const mongoId = user._id.toString();
const newUser = yield models.user.create({
email: user.email,
@ -62,7 +62,7 @@ co(function *sync() {
deletedAt: user.status === 'deleted' ? new Date().getTime() : null,
createdAt: user.createdAt,
updatedAt: user.createdAt,
oldId,
mongoId,
});
yield newUser.save({ silent: true });
}

View file

@ -18,7 +18,7 @@ co(function *sync() {
const userIds = {};
debug('remap');
for (const user of users) {
userIds[user._id] = user.id;
userIds[user.mongoId] = user.id;
}
debug('remap done');
let files;
@ -48,6 +48,8 @@ co(function *sync() {
const processed = file.status !== 'uploading';
const accessedAt = file.last_accessed ? new Date(file.last_accessed * 1000) : null;
const mongoId = file._id.toString();
yield models.file.upsert({
id: file._id.toString(),
name: file.file_name,
@ -68,6 +70,7 @@ co(function *sync() {
md5: file.md5,
malwarePositives: file.virustotal && file.virustotal.positives > 0 ?
file.virustotal.positives : null,
mongoId,
}, { /* logging: false */ });
}

View file

@ -50,7 +50,7 @@ co(function *sync() {
continue;
}
const oldId = user._id.toString();
const mongoId = user._id.toString();
const newUser = yield models.user.create({
email: user.email,
@ -62,7 +62,7 @@ co(function *sync() {
deletedAt: user.status === 'deleted' ? new Date().getTime() : null,
createdAt: user.createdAt,
updatedAt: user.createdAt,
oldId,
mongoId,
}, {
include: [models.activation],
});

View file

@ -21,6 +21,7 @@ export default function (sequelize, DataTypes) {
legacyId: DataTypes.STRING(12), // eslint-disable-line new-cap
md5: DataTypes.STRING(32), // eslint-disable-line new-cap
malwarePositives: DataTypes.INTEGER,
mongoId: DataTypes.STRING,
}, {
paranoid: true,
indexes: [

View file

@ -8,7 +8,7 @@ export default function (sequelize, DataTypes) {
activated: DataTypes.BOOLEAN,
banned: DataTypes.BOOLEAN,
deletedAt: DataTypes.DATE,
oldId: DataTypes.STRING,
mongoId: DataTypes.STRING,
}, {
paranoid: true,
indexes: [